Internal background job system
ImageMaster has an internal background job processing system. The job system is used to fulfill tasks by executing background jobs periodically. Each task is performed by a dedicated job. Each job is denoted by a job name according to the table in the bottom.
Some jobs are system jobs, which are special in the following ways:
-
A system job must exist exactly once in the system.
-
A system job has no schedule, or an empty schedule. It only reacts to specifically enqueued tasks and does not enqueue its own tasks.
-
A system job cannot be deleted via deleteJob().
-
A system job cannot be configured via the AdminClient.
Job-related configurations can be set according to the installation manual [IM ImageMaster], like:
-
ima.job.processing (enables job processing per application server)
-
ima.job.maxAgeOfJobLockSeconds (for purging unwanted locked jobs)
Each non-system job has a schedule when it needs to be run (see Job schedules) and a job configuration (see Job configuration). These two job properties can be configured via the ImageMaster AdminClient [UM AdminClient].
ImageMaster may have custom jobs at customer side, for instance, for reporting automatically via e-mail statistics on the documents archived on the previous day.
The pre-installed jobs are:
|
Job name |
Role |
|---|---|
|
Core system |
|
|
jobController (system job) |
jobController |
|
manages the periodic execution of other jobs |
|
|
ddlRunner (system job) |
ddlRunner |
|
performs changes in the database model of ImageMaster (for instance, if new attributes are added to a document type) |
|
|
mailSender (system job) |
mailSender |
|
sends e-mails (for instance, used by the password reset mechanism) |
|
|
folderCleaner (system job) |
folderCleaner |
|
deletes unused folders |
|
|
planRunner (hourly) |
planRunner |
|
executes retention plans |
|
|
SearchConnector (system job) |
roleSearchConnector |
|
performs fulltext indexing of documents |
|
|
MasterDetailFulltextUpdate (system job) |
roleSearchConnector |
|
generates tasks for fulltext indexing of detail documents after a related master document has been updated or scheduled for indexing |
|
|
recycleBinCleanup |
recycleBinCleanup |
|
deletes documents in the recycle bin Before a document in the recycle bin is permanently deleted, a maximum age needs to be reached. This age is defined by a java.time.Duration. The accepted format is based on the ISO-8601 duration format PnDTnHnMn.nS with days considered to be exactly 24 hours. One job is restricted to one document type. In case of an error (Error DOC-00043 (recycle bin cleanup job)) the recycle bin cleanup job will retry deleting this document during the next run. |
|
|
Related to exports and reports of the WorkplaceClient |
|
|
exportCleanupJob |
exportCleanupRole |
|
cleans up old exports, which are visible in the WorkplaceClient “Activities” room |
|
|
gdprReportCleanupJob |
gdprReportCleanupRole |
|
cleans up old reports created by the ImageMaster Compliance Cockpit, which are visible in the WorkplaceClient “Activities” room |
|
|
Signature Service |
|
|
TrustListUpdate (monthly) |
signatureService |
|
downloads national eIDAS trusted lists of the European Commission |
|
|
Business Process management |
|
|
WorkflowHistoryJob (system job) |
workflow |
|
stores the workflow history as a hidden XML attachment on the document when a workflow completes (for long-term preservation) |
|
|
WorkflowNotificationDaily (daily) |
workflow |
|
sends daily notifications about pending workflow tasks for users who have daily notifications enabled |
|
|
WorkflowNotificationWeekly (weekly) |
workflow |
|
sends weekly notifications about pending workflow tasks for users who have weekly notifications enabled |
|
|
Messaging for ERP |
|
|
CleanupTransferJobs |
SAPMSGrole |
|
deletes successfully processed transfer jobs (see |
|
|
executeTransferJobs |
SAPMSGrole |
|
initiates document transfers to SAP (see |
|
|
Table 354: Pre-installed jobs |
|