angular / angular/angularfire

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

Open
#3,257 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
7.8k
Forks
2.2k
Avg merge
22h 28m
Merged PRs (30d)
6

Description

### 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

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the local and production builds with Angular 14, Firebase 9.9.1, AngularFire 7.4.1, and Node 16.13.0. Trace the Firebase Database assertionError source and the ChildrenNode.equals stack shown in the report. Done means both builds run without the unknown node type error or the maximum call stack exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, firebase, typescript
Domain
database
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.