Firebase Database (${JSCORE_VERSION}) INTERNAL ASSERT FAILED: Unknown node type
- 主要语言
- TypeScript
- 星标
- 7.8k
- 派生
- 2.2k
- 平均合并
- 22 小时 28 分钟
- 30 天内合并 PR
- 6
描述
### Version info
**Angular: 14**
**Firebase: 9.9.1**
**AngularFire: 7.4.1**
**Other (e.g. Ionic/Cordova, Node, browser, operating system):**
Node 16.13.0
macOS
### How to reproduce these conditions
#### Steps to set up and reproduce
When a local or production build is served, we have the below console error:
```
zone.js:1061 Unhandled Promise rejection: Firebase Database (${JSCORE_VERSION}) INTERNAL ASSERT FAILED: Unknown node type ; Zone: ; Task: setTimeout ; Value: Error: Firebase Database (${JSCORE_VERSION}) INTERNAL ASSERT FAILED: Unknown node type
```
Also, not sure if because above max call stack also showed:
```
polyfills.js:29650 Uncaught RangeError: Maximum call stack size exceeded
at ChildrenNode.isLeafNode (vendor.js:286427:13)
at ChildrenNode.equals (vendor.js:64135:22)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
at ChildrenNode.equals (vendor.js:64140:31)
```
#### Source code from tracing:
```
/**
* Returns an Error object suitable for throwing.
*/
const assertionError = function (message) {
return new Error('Firebase Database (' +
CONSTANTS.SDK_VERSION +
') INTERNAL ASSERT FAILED: ' +
message);
};
```
### Expected behavior
Build runs on both local and production without errors
### Actual behavior
Build runs on both local and production has errors
贡献指南
调研方向
首先使用 Angular 14、Firebase 9.9.1、AngularFire 7.4.1 和 Node 16.13.0 重现本地和生产构建。追踪 Firebase Database 的 assertionError 来源,以及报告中显示的 ChildrenNode.equals 堆栈。两种构建都能运行且不出现未知节点类型错误或最大调用堆栈异常,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- angular, firebase, typescript
- 领域
- database
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100