We're seeing an issue where if you have multiple batch edits in a task queue run, subsequent batch edits don't apply. We've seen this by trying to replace object preferred labels. It appears that the subsequent runs $vs_screen = $po_request->getActionExtra(); results in an empty screen in \BatchProcessor::saveBatchEditorForm().
Obviously AppController is a pretty central class so I didn't want to just change it as a work around, so wanted some thoughts on a fix for this @collectiveaccess?
We've seen that both mediaImport.php and metadataImport.php take a similar approach so may also be affected by this.
So do we want to:
Clear the instance when running each task in the task queue inside \TaskQueue::processQueue
Add a parameter to AppController::getInstance to clear existing
Add a separate method to AppController to clear the existing instance
We're seeing an issue where if you have multiple batch edits in a task queue run, subsequent batch edits don't apply. We've seen this by trying to replace object preferred labels. It appears that the subsequent runs
$vs_screen = $po_request->getActionExtra();
results in an empty screen in\BatchProcessor::saveBatchEditorForm()
.We've managed to fix the issue by unsetting the global $g_app_controller inside app/lib/Plugins/TaskQueueHandlers/batchEditor.php just prior to calling
AppController::getInstance()
This is running off of
develop
.Obviously AppController is a pretty central class so I didn't want to just change it as a work around, so wanted some thoughts on a fix for this @collectiveaccess?
We've seen that both
mediaImport.php
andmetadataImport.php
take a similar approach so may also be affected by this.So do we want to:
\TaskQueue::processQueue