Mapped HSMModule (service=FileCopyHSMModule,type=Mapped) must be configured for
the file system specific HSM modules.
This service copies all tar files with file status DEFAULT, TO_ARCHIVE and ARCHIVED from
SourceFileSystem to TargetFileSystem.
Migrated source files are marked with file status MIGRATED or MIGRATION_FAILED.
Source and Target files can be verified by enabling VerifySourceTar and/or VerifyTargetTar.
Note: the source files get file status MD5_CHECK_FAILED if verification of source tar file failed!
The source file entities (not the real files) can be removed by specifying RemoveSrcOnTargetFileStatus
and RemoveTaskInterval.
]]>
org.dcm4chex.archive.hsm.HSMMigrateService
The default constructor
HSMMigrateService
NONE = disable this service.]]>
SourceFileSystem
java.lang.String
Primary of the source File System.
SourceFileSystemPk
java.lang.String
NONE = disable this service.]]>
TargetFileSystem
java.lang.String
Primary of the target File System.
TargetFileSystemPk
java.lang.String
File status of created files in target file system.
Enumerated values: DEFAULT, TO_ARCHIVE, ARCHIVED, QUERY_HSM_FAILED
TargetFileStatus
java.lang.String
If enabled the tar file is verified by
1) checking MD5 sums of the tar content.
2) check if tar file contains the file.
Only applicable if filesystem is a tar filesystem!
]]>
VerifySourceTar
boolean
If enabled the tar file is verified by
1) checking MD5 sums of the tar content.
2) check if tar file contains the file.
Only applicable if filesystem is a tar filesystem!
]]>
VerifyTargetTar
boolean
NONE: Disable remove of source files.
Enumerated values: DEFAULT, TO_ARCHIVE, ARCHIVED
]]>
RemoveSrcOnTargetFileStatus
java.lang.String
Enumerated values:
NEVER.....Don't query file status of tar file. (status must be updated via SyncFileStatus service)
ALWAYS....Always query status. (recheck if status is already RemoveSrcOnTargetFileStatus or an error stati)
ON_WRONG..Only query status if current status is not RemoveSrcOnTargetFileStatus
]]>
QueryStatusMode
java.lang.String
Format:
interval!from-to or NEVER
interval = ##m (in minutes), ##h (in hours).
from = start hour (0-23) when no migration should be performed
to = end hour (0-23) when no migration should be performed
NEVER = disable migration of HSM file systems
Example:
1h!9-17 means every hour,
migrate tar files, except between the hours of 9:00am and 5:00pm.
By setting this type of TaskInterval, you can perform HSM migration outside of peak hours.
]]>
MigrationTaskInterval
java.lang.String
Format:
interval!from-to or NEVER
interval = ##m (in minutes), ##h (in hours).
from = start hour (0-23) when no retry should be performed
to = end hour (0-23) when no retry should be performed
NEVER = disable retry
]]>
RetryTaskInterval
java.lang.String
Format:
interval!from-to or NEVER
interval = ##m (in minutes), ##h (in hours).
from = start hour (0-23) when no 'remove source files' should be performed
to = end hour (0-23) when no 'remove source files' should be performed
NEVER = disable remove of source files
]]>
RemoveTaskInterval
java.lang.String
Migrate newer files first.
LastFilesFirst
boolean
Should be used if source filename is only a UID (e.g. Centera) and target filesystem is file based.
]]>
CreateNewTargetFilename
boolean
Current DB offset for checking tar files for removal.
OffsetForRemove
int
Current DB offset for retry MIGRATION_FAILED source files.
OffsetForRetry
int
Maximum number of tar files which are migrated in one run.
NumberOfFilesPerMigrateTask
int
Maximum number of tar files for which file entities are removed from source filesystem in one run.
NumberOfFilesPerRemoveTask
int
Maximum number of parallel migration tasks.
Concurrency
int
Maximum chunk size in MB to copy migration files. (limited by available heap memory)
MaxChunkSize
long
Current state if query to get migration tasks is running. Used to avoid concurrency!
isQueryRunning
boolean
Current state if migration task is running. Used to avoid concurrency!
isMigrationRunning
boolean
Current state if remove source files task is running. Used to avoid concurrency!
isRemoveRunning
boolean
Used internally. Do NOT modify.
TimerIDHSMMigrate
java.lang.String
Used internally. Do NOT modify.
TimerIDHSMRetry
java.lang.String
Used internally. Do NOT modify.
TimerIDHSMRemove
java.lang.String
Used internally. Do NOT modify.
HSMModuleServicename
javax.management.ObjectName
Used internally. Do NOT modify.
SchedulerServiceName
javax.management.ObjectName
&defaultAttributes;
&defaultOperations;
Return number of migrated files or
-1 if migration is already running (Timer)
]]>
migrate
int
Return number of migrated files or
-1 if migration is already running (Timer)
]]>
retry
int
Return number of removed files or
-1 if it is already running
]]>
removeSourceFiles
int
Show current status of migration.
showMigrationStatus
java.lang.String