Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

129
Views
AngularFire7 Maximum call stack exceeded in transaction

I've already made a post but this one got closed. I also found this post which is pretty much the same error I got.

Now I got the same error for another reason and still can't find any answers on the net. I'm using the realtime database and I have a node in the database that looks like this:

private: {
  $user_uid: {
    formula: {
      formula_quota:30,
      quota_used:0
    }
  }
}

I use a button to publish some data and run a transaction to get the quota object and update it when publish is done.

I won't post the code that is not used or commented out but the quota transaction is like that:

quotaTransaction ( userUID:string, projectUID:string, state:EditorState, asObject:boolean, asProject:boolean ) {

    const quotaPath = `/private/${ userUID }/formula`;

    const quotaDoc = ref( this.db, quotaPath );
 
    runTransaction( quotaDoc, quota => {

      let nbPublish = 0;

      if ( asObject ) nbPublish++;
      if ( asProject ) nbPublish++;

      let quotaUsed = quota.quota_used;
      let formulaQuota = quota.formula_quota;

      if ( nbPublish + quotaUsed > formulaQuota ) return ( undefined );

      return ( { quota_used: quotaUsed + nbPublish, formula_quota:formulaQuota } );

    } ).catch( console.log );

}

the first time I run the quotaTransaction I get this error

RangeError: Maximum call stack size exceeded at ChildrenNode.isLeafNode (vendor.js:52413:13) at ChildrenNode.equals (vendor.js:20990:22) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31) at ChildrenNode.equals (vendor.js:20995:31)

second time I run it I get:

TypeError: childPathObj.split is not a function at pathChild (vendor.js:17766:38) at ImmutableTree.findRootMostMatchingPathAndValue (vendor.js:23435:30) at ImmutableTree.findRootMostMatchingPathAndValue (vendor.js:23432:51) at ImmutableTree.findRootMostMatchingPathAndValue (vendor.js:23432:51) at ImmutableTree.findRootMostValueAndPath (vendor.js:23456:17) at compoundWriteGetCompleteNode (vendor.js:55532:45) at compoundWriteChildCompoundWrite (vendor.js:55574:27) at writeTreeCalcCompleteEventCache (vendor.js:55887:19) at syncTreeCalcCompleteEventCache (vendor.js:57565:10) at repoGetLatestState (vendor.js:59219:10)

Any clue, maybe the firebase team can help me?

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!