NetX includes a job that can scan the asset repository looking for any inconsistencies or corruption in the stored files. It accomplishes this by storing an initial MD5 checksum for the asset file during import. When this job is run, it will scan the repository, generate a new checksum and compare the current scan checksum versus the stored import checksum. If the two checksums match, then data integrity has been confirmed.

Requirements

This function requires that the following property is enabled:

PropertyTypeSettingDescription
metadata.checksumEnabledbooleantrue

When enabled, any imported (or resynced) asset will generate a unique signature per file (MD5 checksum). And subsequently, any duplicate files found will be consolidated into a single asset, adding the duplicate's category to the original asset file. However, please appreciate that this function adds additional overhead to create that file signature; very large files (greater than 100MBs) can be fairly processor-intensive.

Details

This runs as a job in the background of your NetX instance, ideally with a period of at least a week as this will be an intensive job on large repositories. It requires that MD5 checksums are recorded in NetX's database. If so, this will scan those checksums and note any mismatch in the original and current checksum, recording successes and failures. You may set a property to send a mismatch report to an email address if there are any discrepancies. An additional property can be set so that you will get a report sent to the email address set in the above property, regardless of whether there were any mismatches or not (you may get a success report email). If you would like to limit the scope of the Asset Integrity Check, you may set an additional property that specifies the folder containing the assets you would like to have examined. 

Properties to set the above modifications are here:

PropertyTypeExampleDescription
checksum.checksumVerificationEmailAddressStringsample@emailaddress.com

This sets the email address to which any email regarding the results of a checksum verification job will be sent. Unless other properties are also set this sends a discrepancy report after the job is complete.

checksum.checksumVerificationEmailCleanbooleantrueWhen set to true, the email address in the checksum.checksumVerificationEmailAddress will receive an email verifying that the job is complete and either a success report or a mismatch report.
checksum.checksumVerificationCategoryPathStringImages/NewThis limits the asset integrity check job to the folder indicated

Usage

To run this function, you must be an Administrator, and you must navigate to the Jobs tab in the Systems section.

There, you must add this job to the job runner:

 com.netxposure.products.imageportal.util.ChecksumVerificationJob

 Cut and paste that into the run box; and then click the “run” button. This will initiate the job.