Ported Mx6 3.2 development changes #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixed an issue with “Queued” actions remaining in the “Open” actions tab.
Fixed an issue with the process number of the QueuedAction not updating correctly.
Fixed an issue with the process number of the QueuedAction resetting to “0” after the action was successfully processed.
Removed Queue monitor information from QueueOverview page.
o Queue monitor information did not refresh regularly quickly causing the information to become outdated. Unfortunately implementing refresh behavior did not appear to be easily possible.
o Queue monitor information draws data from the underlying Java threads. The numbers did not always line-up with the information available in the QueueOverview page. This was confusing.
o The fixes in the QueuedOverview page make the monitor even less relevant as the same information can now be drawn quite easily from the overview page itself.
Completely replaced retry mechanism that ensures FIFO ordering of the queues by implementing a pre-processing mechanism.
o This should result in much less error-prone handling of records that are not yet available for processing due to a slight delay between committing in a microflow (i.e. in one thread) and being able to retrieve the record from the database in another thread.
o It should process large amounts of queued actions (added at once) quicker and more reliably as records that cannot be found in the database will no longer delay the entire pre-processing of queued actions.
Removed while loop in ObjectQueueExecutor Java action that might have caused a queue to “hang”. An error will now be printed to the log instead.
Added scheduled event SE_ReinitializeQueues
o When you run into a situation where one or more queues appear to hang for long periods of time, reinitializing the queue(s) can be a workaround to get them to start executing actions again.
By default this scheduled event runs once an hour.
Removed full retry mechanism and replaced by preprocessing of actions before appending them to the queue.
Made a few changes to the _QueueAppenderThread functionality (Java) so restarting the thread is now possible.
The preprocessing functionality should resolve the issue of "stuck" queued actions, which should resolve the following ticket:
The above changes also resolve the Mx7.7+ context issue. So this should resolve the following tickets:
Will release the above as version 4.1 to the AppStore (release package included).