Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


When you run the migration in the command line, you can see a broad view of how much progress has been made for each Class. Notice the last line is called the "indicates a second pass ". I'll explain that more later. for Migrating MediaObject. The second pass is necessary to associate master files with media objects and get them ordered properly.

Command Options

OptionExplanationExample Usage

Default Value

CONFIRMRequired in order to prevent accidental executionCONFIRM=yes

pidsA comma separated list of Avalon 5.x Fedora 3 pids to migratepids=avalon:1,avalon:2,avalon:3

pidfilePath to a filename containing one Avalon 5.x Fedora 3 pid per linepidfile=/path/to/pidfile


parallel_processesNumber of parallel processes the migration tool should useparallel_processes=4number of processors - 2
overwriteDetermines whether: existing Fedora 4 objects should be kept, cleaned out, and reused (overwrite=true); or new objects should be created even if matching migrated objects already exist (overwrite=false)overwrite=true


namespaceThe Fedora 3 namespace that should be migratednamespace=mediaavalon
skip_completedSkip items with status = completedskip_completed=truefalse

Rerun a migration to bring in new data

You'll want to set skip_completed and overwrite to true. Refer to the logic here

Code Block
bundle exec rake avalon:migrate:repo overwrite=true skip_completed=true CONFIRM=yes
Code Block
    def migration_required?(pid, klass, method=:migrate)
      status_report = MigrationStatus.find_by(source_class: klass, f3_pid: pid, datastream: nil)
      status_report.nil? ||
        (status_report.status != 'completed' && status_report.status != 'waiting' && method == :migrate) ||
        (status_report.status != 'completed' && method == :second_pass) ||
        (!skip_completed? && overwrite?)

Rerunning the migration to fix failed objects

Once the migration is running, it is best to let it fully finish before attempting to rerun failed objects.  The migration should fail objects that are missing parent or child objects.  Once the migration is finished running, a list of the failed object ids can be collected into a file by running this command:


Potential Problems

First read the Migration Report and Results to determine what objects failed migration and why.  

Objects fail with errors about mismatched prefixesTurn off parallel processing by setting parallel_processes=1
Objects fail with LDP conflictTurn off parallel processing by setting parallel_processes=1
Poster and thumbnail images missingSee script on Miscellaneous scripts for R5/R6 migration
Section permalinks incorrectSee script on  Miscellaneous scripts for R5/R6 migration 
Permalink collisionsSee script on  Miscellaneous scripts for R5/R6 migration 

Helper Scripts

See Miscellaneous scripts for R5/R6 migration for some scripts that could can be adapted to your institution to help find and fix data issues post-migration.