Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-31946

Fix BulkMigrator service in Cluster mode

    XMLWordPrintable

    Details

    • Release Notes Summary:
      BulkMigrator now works in cluster mode
    • Tags:
    • Team:
      PLATFORM
    • Sprint:
      nxplatform #90

      Description

      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

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: