I narrowed down my issue. It seems to be an issue with using qb and/or quick entities inside a wire while having qb debugging turned on. I tested with both cbWire versions 3.0.0 and 2.3.9-snapshot as well as Lucee 6 and got the same results.
There are some strange behaviors:
cbDebugger > qb > enabled=false:
wire with multiple quick entities : No Delays
wire with quick entities loading relationship : 20-25 second loading delays every ~10 seconds
wire with qb queries : No Delays
wire without qb queries or quick entities : No Delays
cbDebugger > qb > enabled=true;
wire with multiple quick entities : 20-25 second loading delays every ~10 seconds
wire with quick entities loading relationship : 20-25 second loading delays every ~10 seconds
wire with qb queries : 20-25 second loading delays every ~10 seconds
wire without qb queries or quick entities : No Delays
-
I don’t ever get any errors displayed on the page when there is a loading delay
-
When I get the delays in loading I have about a ~10 second window where if I refresh the page I don’t get the delay then after that ~10 second window I get the loading delay.
-
Even when the page loads with the delays the cbwire does not have any delays using the livewire functionality. The refreshes of the wire load very fast as expected. The delay seems to happen only on the initial rendering of the wire.
-
Using the dbDebugger Timer I put a timer at the very top and bottom of my cfoutput in my wire. The timer does not show the delay even though the calls to qb and quick are between the timer start and stop.
-
I often get this error after I have the delay in cbDebugger when I refresh the cbdebugger page:
{
"data":{
"environment":{
"currentRoutedUrl":"cbdebugger/",
"timestamp":"2023-07-21T18:09:07-07:00",
"currentRoute":"/",
"currentEvent":"cbdebugger:Main.index"
},
"exception":{
"stack":[
"D:\HOME\staging\wt-om\wwwroot\modules\cbdebugger\views\main\partials\profilers.cfm:295",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\RendererEncapsulator.cfm:57",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:452",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:337",
"D:\HOME\staging\wt-om\wwwroot\modules\cbdebugger\views\main\panels\requestTrackerPanel.cfm:224",
"D:\HOME\staging\wt-om\wwwroot\modules\cbdebugger\views\main\debugger.cfm:23",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\RendererEncapsulator.cfm:57",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:452",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:337",
"D:\HOME\staging\wt-om\wwwroot\modules\cbdebugger\layouts\Monitor.cfm:32",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\RendererEncapsulator.cfm:57",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:452",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:668",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Renderer.cfc:582",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\FrameworkSupertype.cfc:243",
"D:\HOME\staging\wt-om\wwwroot\modules\cbdebugger\handlers\Main.cfc:91",
"D:\HOME\staging\wt-om\wwwroot\modules\cbdebugger\handlers\Main.cfc:46",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\RestHandler.cfc:58",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Controller.cfc:998",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\web\Controller.cfc:713",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\Bootstrap.cfc:290",
"D:\HOME\staging\wt-om\wwwroot\coldbox\system\Bootstrap.cfc:506",
"D:\HOME\staging\wt-om\wwwroot\Application.cfc:79"
],
"detail":"",
"type":"java.lang.ArithmeticException",
"extendedInfo":""
}
},
"error":true,
"pagination":{
"totalPages":1,
"maxRows":0,
"offset":0,
"page":1,
"totalRecords":0
},
"messages":[
"An exception ocurred: Division by zero is not possible"
]
}
and this in the CommandBox Log:
[ERROR] runwar.context: 2023-07-21 09:15:34 modules.cbdebugger.handlers.Main Error calling cbdebugger:Main.index: Division by zero is not possible | ExtraInfo: {
"_stacktrace":"lucee.runtime.exp.NativeException: Division by zero is not possible\r\n\tat lucee.runtime.op.Operator.divRef(
Operator.java:1024)
\r\n\tat modules.cbdebugger.views.main.partials.profilers_cfm$cf.call(
/modules/cbdebugger/views/main/partials/profilers.cfm:295)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:929)
\r\n\tat coldbox.system.web.rendererencapsulator_cfm$cf.call(
/coldbox/system/web/RendererEncapsulator.cfm:57)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:940)
\r\n\tat lucee.runtime.tag.CFTag.doInclude(
CFTag.java:319)
\r\n\tat lucee.runtime.tag.CFTag.cfmlStartTag(
CFTag.java:245)
\r\n\tat lucee.runtime.tag.CFTag.doStartTag(
CFTag.java:179)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall2(
/coldbox/system/web/Renderer.cfc:452)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.call(
UDFImpl.java:223)
\r\n\tat lucee.runtime.type.scope.UndefinedImpl.call(
UndefinedImpl.java:786)
\r\n\tat lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(
VariableUtilImpl.java:787)
\r\n\tat lucee.runtime.PageContextImpl.getFunction(
PageContextImpl.java:1775)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall1(
/coldbox/system/web/Renderer.cfc:337)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.callWithNamedValues(
UDFImpl.java:213)
\r\n\tat lucee.runtime.type.scope.UndefinedImpl.callWithNamedValues(
UndefinedImpl.java:804)
\r\n\tat lucee.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(
VariableUtilImpl.java:866)
\r\n\tat lucee.runtime.PageContextImpl.getFunctionWithNamedValues(
PageContextImpl.java:1794)
\r\n\tat modules.cbdebugger.views.main.panels.requesttrackerpanel_cfm$cf.call(
/modules/cbdebugger/views/main/panels/requestTrackerPanel.cfm:224)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:929)
\r\n\tat modules.cbdebugger.views.main.debugger_cfm$cf.call(
/modules/cbdebugger/views/main/debugger.cfm:23)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:929)
\r\n\tat coldbox.system.web.rendererencapsulator_cfm$cf.call(
/coldbox/system/web/RendererEncapsulator.cfm:57)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:940)
\r\n\tat lucee.runtime.tag.CFTag.doInclude(
CFTag.java:319)
\r\n\tat lucee.runtime.tag.CFTag.cfmlStartTag(
CFTag.java:245)
\r\n\tat lucee.runtime.tag.CFTag.doStartTag(
CFTag.java:179)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall2(
/coldbox/system/web/Renderer.cfc:452)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.call(
UDFImpl.java:223)
\r\n\tat lucee.runtime.type.scope.UndefinedImpl.call(
UndefinedImpl.java:786)
\r\n\tat lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(
VariableUtilImpl.java:787)
\r\n\tat lucee.runtime.PageContextImpl.getFunction(
PageContextImpl.java:1775)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall1(
/coldbox/system/web/Renderer.cfc:337)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.call(
UDFImpl.java:223)
\r\n\tat lucee.runtime.type.scope.UndefinedImpl.call(
UndefinedImpl.java:786)
\r\n\tat lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(
VariableUtilImpl.java:787)
\r\n\tat lucee.runtime.PageContextImpl.getFunction(
PageContextImpl.java:1775)
\r\n\tat modules.cbdebugger.layouts.monitor_cfm$cf.call(
/modules/cbdebugger/layouts/Monitor.cfm:32)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:929)
\r\n\tat coldbox.system.web.rendererencapsulator_cfm$cf.call(
/coldbox/system/web/RendererEncapsulator.cfm:57)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:1056)
\r\n\tat lucee.runtime.PageContextImpl._doInclude(
PageContextImpl.java:948)
\r\n\tat lucee.runtime.PageContextImpl.doInclude(
PageContextImpl.java:940)
\r\n\tat lucee.runtime.tag.CFTag.doInclude(
CFTag.java:319)
\r\n\tat lucee.runtime.tag.CFTag.cfmlStartTag(
CFTag.java:245)
\r\n\tat lucee.runtime.tag.CFTag.doStartTag(
CFTag.java:179)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall2(
/coldbox/system/web/Renderer.cfc:452)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.callWithNamedValues(
UDFImpl.java:213)
\r\n\tat lucee.runtime.type.scope.UndefinedImpl.callWithNamedValues(
UndefinedImpl.java:804)
\r\n\tat lucee.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(
VariableUtilImpl.java:866)
\r\n\tat lucee.runtime.PageContextImpl.getFunctionWithNamedValues(
PageContextImpl.java:1794)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall2(
/coldbox/system/web/Renderer.cfc:668)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.callWithNamedValues(
UDFImpl.java:213)
\r\n\tat lucee.runtime.ComponentImpl._call(
ComponentImpl.java:699)
\r\n\tat lucee.runtime.ComponentImpl._call(
ComponentImpl.java:586)
\r\n\tat lucee.runtime.ComponentImpl.callWithNamedValues(
ComponentImpl.java:1952)
\r\n\tat lucee.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(
VariableUtilImpl.java:866)
\r\n\tat lucee.runtime.PageContextImpl.getFunctionWithNamedValues(
PageContextImpl.java:1794)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall2(
/coldbox/system/web/Renderer.cfc:582)
\r\n\tat coldbox.system.web.renderer_cfc$cf.udfCall(
/coldbox/system/web/Renderer.cfc)
\r\n\tat lucee.runtime.type.UDFImpl.implementation(
UDFImpl.java:112)
\r\n\tat lucee.runtime.type.UDFImpl._call(
UDFImpl.java:350)
\r\n\tat lucee.runtime.type.UDFImpl.callWithNamedValues(
UDFImpl.java:213)
\r\n\tat lucee.runtime.ComponentImpl._call(
ComponentImpl.java:699)
\r\n\tat lucee.runtime.ComponentImpl._call(
Compon
The issue seems to be related to qb and having cbdebugger qb debugging enabled, however I still get it when it is disabled and retrieve a quick entities relationship.
I am using the same version of CommandBox, Lucee and Java on my dev machine. The only difference is dev is on a Mac and staging is Windows.
Anyone have any insights, suggestions, or pointers?