1

I have a fairly large Craft CMS 2 site was recently migrated to Craft CMS 3, because of the large amount of entry revisions, the migration that runs the ConvertEntryRevisions queue job did not complete so entry revisions/versions from Craft CMS 2 are missing, the database tables pre 3.2 are still there with this data.

Is it safe to re-run the ConvertEntryRevisions queue job in a migration to kick off the job again to resave these into the newer format to restore them from Craft CMS 2? If the job gets interrupted, as it is more likely due to the time it will take for the amount of revisions present (several hours) despite setting a long ttl value, can it be retried without any issues if it did get marked as failed i.e. wouldn't cause any data corruption?

1 Answer 1

1

After testing this on development/staging environments, I can confirm it is safe to run. When it originally ran, it likely failed due to exceeding the TTR.

Looking at the queue job, simplified it is checking if a revision exists in the entryversions table but isn't present as a draft in the new format. If the queue job does get interrupted it can be resumed and would just continue from the entryversion needing to be converted.

If you originally migrated from a Craft 2 site this table could be quite large and you may need to truncate it before queuing the job, given you probably don't need versions from more than a year or so and it will take a very long time when you start dealing with values like 30,000 drafts.

You will likely want to push the queue job with a higher TTR if you do have a lot of entry versions to convert. Likewise running this as a separate worker will avoid issues with causing issues with your site's front end if it's a longer running job.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.