Our pure JavaScript Scheduler component


Post by Exigo »

Hello

I've run into an issue with the error. It is not consistant, except that it happens when I create a tasks with children tasks. It can happen in a scheduler.suspendRefresh, in an event or after everything has been created. Our schedule continues working after it, after every event rerenders.

What does this error mean?

If it is a generic error, I can try to recreate it in one of your examples. It started happening when we upgraded to bryntum 5.

Cheers
Andreas @ Exigo

Two examples of when it happens:

core.mjs:6485 ERROR Error: Uncaught (in promise): Error: Identifier can not read from higher level identifier
Error: Identifier can not read from higher level identifier
    at EngineTransaction.addEdge (schedulerpro.js:19836:58)
    at EngineTransaction.get (schedulerpro.js:19380:22)
    at EngineReplica.get (schedulerpro.js:21358:37)
    at TemplateClass.getFromGraph (schedulerpro.js:23677:88)
    at ClassDefEx.get (schedulerpro.js:22638:40)
    at get (<anonymous>)
    at _get (schedulerpro.js:198:10)
    at ClassDefEx.get (schedulerpro.js:197268:25)
    at ProHorizontalRendering.calculateRowHeight (schedulerpro.module.js:172880:109)
    at TaktplanScheduler.getRowHeight (schedulerpro.module.js:176134:46)
    at resolvePromise (zone.js:1262:1)
    at zone.js:1169:1
    at asyncGeneratorStep (asyncToGenerator.js:6:1)
    at _next (asyncToGenerator.js:25:1)
    at asyncToGenerator.js:32:1
    at new ZoneAwarePromise (zone.js:1349:1)
    at asyncToGenerator.js:21:1
    at TaktplanScheduler.resumeRefresh (schedulerpro.module.js:176100:32)
    at AddTaskService.<anonymous> (bryntum-scheduler.service.ts:362:24)
    at Generator.next (<anonymous>)
ERROR Error: Identifier can not read from higher level identifier
    at EngineTransaction.addEdge (schedulerpro.js:19836:58)
    at EngineTransaction.get (schedulerpro.js:19380:22)
    at EngineReplica.get (schedulerpro.js:21358:37)
    at TemplateClass.getFromGraph (schedulerpro.js:23677:88)
    at ClassDefEx.get (schedulerpro.js:22638:40)
    at get (<anonymous>)
    at _get (schedulerpro.js:198:10)
    at ClassDefEx.get (schedulerpro.js:67941:33)
    at ClassDefEx.get (schedulerpro.js:67164:49)
    at Dependencies.getEventAssignments (schedulerpro.module.js:152279:20)

Post by alex.l »

Hi Andreas,

How to reproduce this problem? It's core problem that may means a lot of things, in general, when child entity trying to push into children some parent entity, or in other similar scenarios. But we cannot say what's wrong exactly without a test case.

All the best,
Alex


Post by Exigo »

Hey Alex

That is fair, but since I can't make it consistently fail, I'm not sure how to create a test case.

So one of the scenarios happens when a child entity is added to a parent entity's children? If so I have something I can look at :)

Thanks
Andreas


Post by alex.l »

Please let us know if any luck!

All the best,
Alex


Post by Exigo »

Hey Alex

We had some modifications on the calculate date constraint intervals, based on our own build of bryntum SchedulerPro. Once we transitioned over to running it purely on the NPM package and overwrite it in our frontend code base the issue disappeared. My best bet would be that we build SchedulerPro in Webpack in a un optimized way, which makes sense cause the error occurred when performance was needed (Adding a lot of children to a parent).

Thanks for the help


Post Reply