angular / angular/angularfire

Firebase Database (${JSCORE_VERSION}) INTERNAL ASSERT FAILED: Unknown node type

オープン
#3,257 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
TypeScript
スター
7.8k
フォーク
2.2k
平均マージ
22時間 28分
マージ済み PR(30日)
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 のスタックを追跡します。両方のビルドが unknown node type エラーや maximum call stack 例外なしで実行されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
angular, firebase, typescript
領域
database
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。