Migrate the Database to Include SHA-256

JFrog Installation & Setup Documentation

Content Type
Installation & Setup

Migrating the database may be a resource intensive operation

Depending on the size of your database, this process may be resource intensive. To mitigate the possible load on your system, you may configure the process using several system properties listed below or the REST APIs. We strongly recommend reading through the entire process migration process to ensure the optimal configuration for your system.

The migration is configured through a set of properties in Artifactory's artifactory.system.properties file or using the Start SHA256 Migration Task and Stop SHA256 Migration Task REST API endpoints, and essentially, does the following:

  • Search for all database records that don't have a SHA-256 value.

  • For each such record, find all others in the database with the same SHA1 checksum value

    • If any of them have the SHA-256 calculated already, use that to update all the others

    • If none of them have the SHA-256 calculated already, calculate it and then use that to update all others

  • If there are no other records with the same SHA1 value, calculate the SHA-256

First run garbage collection to optimize the migration process

The migration process is complete once all database entries have been populated with SHA-256 values. Since your database may contain entries for artifacts that have been deleted, but have not yet been physically removed by Garbage Collection we strongly recommend manually invoking garbage collection before invoking the database migration. Removing deleted artifacts can greatly improve performance and total run time of the migration by reducing the number of downloads it generates.Regular Maintenance Operations