-
Type: Bug
-
Status: Resolved
-
Priority: Critical
-
Resolution: Fixed
-
Affects Version/s: 2021.36
-
Component/s: Bulk, Migration Service
-
Release Notes Summary:BulkMigrator now works in cluster mode
-
Tags:
-
Team:PLATFORM
-
Sprint:nxplatform #90
Work done in NXP-26918 is not cluster compatible, it produces:
java.lang.IllegalArgumentException: The migrator is not a Bulk Migrator, migration: blob-keys-migration at org.nuxeo.ecm.core.migrator.AbstractBulkMigrator$MigrationComputation.startBucket(AbstractBulkMigrator.java:234) ~[nuxeo-core-2021.39.6.jar:?] at org.nuxeo.ecm.core.bulk.action.computation.AbstractBulkComputation.processRecord(AbstractBulkComputation.java:103) ~[nuxeo-core-bulk-2021.39.6.jar:?] at org.nuxeo.lib.stream.computation.log.ComputationRunner.lambda$processRecordWithRetry$10(ComputationRunner.java:514) ~[nuxeo-stream-2021.39.6.jar:?] at net.jodah.failsafe.Functions$10.call(Functions.java:252) ~[failsafe-1.1.0.jar:1.1.0] at net.jodah.failsafe.SyncFailsafe.call(SyncFailsafe.java:145) [failsafe-1.1.0.jar:1.1.0] at net.jodah.failsafe.SyncFailsafe.run(SyncFailsafe.java:81) [failsafe-1.1.0.jar:1.1.0] at org.nuxeo.lib.stream.computation.log.ComputationRunner.processRecordWithRetry(ComputationRunner.java:514) [nuxeo-stream-2021.39.6.jar:?] at org.nuxeo.lib.stream.computation.log.ComputationRunner.processRecordWithTracing(ComputationRunner.java:465) [nuxeo-stream-2021.39.6.jar:?] at org.nuxeo.lib.stream.computation.log.ComputationRunner.processRecord(ComputationRunner.java:457) [nuxeo-stream-2021.39.6.jar:?] at org.nuxeo.lib.stream.computation.log.ComputationRunner.processLoop(ComputationRunner.java:315) [nuxeo-stream-2021.39.6.jar:?] at org.nuxeo.lib.stream.computation.log.ComputationRunner.runOnce(ComputationRunner.java:259) [nuxeo-stream-2021.39.6.jar:?] at org.nuxeo.lib.stream.computation.log.ComputationRunner.run(ComputationRunner.java:226) [nuxeo-stream-2021.39.6.jar:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:829) [?:?]
The migrator is not an instance of AbstractBulkMigrator, it is wrapped in an InvalidatorMigrator through:
https://github.com/nuxeo/nuxeo-lts/blob/v2021.39.6/modules/runtime/nuxeo-runtime-migration/src/main/java/org/nuxeo/runtime/migration/MigrationServiceImpl.java#L332
then
https://github.com/nuxeo/nuxeo-lts/blob/v2021.39.6/modules/runtime/nuxeo-runtime-migration/src/main/java/org/nuxeo/runtime/migration/MigrationServiceImpl.java#L504