ColdBox: _actionExists method not found in component

After running ColdBox 4.2, we saw this error after reinitialization, but only on one specific cfc handler. If we start over several times, it will eventually go away, which sounds like a race condition.

We thought we were just doing it extends="coldbox.system.EventHandler"

directly and not allowing the frame mix in the handler methods, but then we started seeing another error:

Error generating: myApp.handlers.admin.report -> CONTROLLER parameter for init function is required but was not passed. constructor arguments: {}

Likewise, this error will go away if we re-run multiple times until we get the one where everything finishes baking before the request arrives in the middle via init.

We cannot reproduce this on non-prod systems, probably due to the significantly lower load.

Has anyone encountered similar things and figured out a way to gracefully restore structure under load?

+3


source to share


1 answer


I did manage to reasonably reproduce the race condition errors during reinitialization and post it as a COLDBOX-307 issue , pretty much the answer is don't use fwreinit in production when we come back using our own method that calls applicationStop in application.cfc and it fixed the problems we saw when using fwreinit.



It should be noted that when using applicationStop it is not thread safe (maybe not the correct term) which means that the application scope for all current requests will go bye when it is called, so you might have some odd errors when re-creating this paths.

+2


source







All Articles