AtoM relies on Gearman in order to execute certain long-running tasks asynchronously to guarantee that web requests are handled promptly and work loads can be distributed across multiple machines. This ensures time and/or resource-intensive tasks do not timeout when running via the web browser.
You must have the necessary dependencies installed and configured to be able manage asynchronous jobs in AtoM. See: Asynchronous jobs and worker management.
As of AtoM 2.2, the ability to generate a PDF or RTF finding aid from archival descriptions, and the ability to manage PREMIS rights inheritance, are now also handled as asynchronous jobs in AtoM. Later versions of AtoM have increasingly used the job scheduler to handle long-running operations, including publication status updates, imports and exports, move operations, print reports, and more.
Using the Jobs page¶
When first arriving on the page, users will see a table showing the status of any ongoing jobs, as well as any previous jobs that have not been cleared by another user. See below for more information on permissions and the Manage jobs page.
Start date: When the job was first requested.
End date: When the job completed. A status of “N/A” implies that the job is still executing.
Job name: Internal name of the job executed; indicates the type of job being performed. Examples include:
- arFindingAidJob - Generate a finding aid in either PDF or RTF format from an archival description. See: Generate, upload, download, and print finding aids.
- Inherit rights - Allow child descriptions to inherit the PREMIS rights applied to a parent. See: Manage rights inheritance.
- arObjectMoveJob - Move an archival description from one parent record to another (or to become a top-level description). See: Move an archival description
- arUpdatePublicationStatusJob - Update the publication status of a record and its descendants to either “published” or “draft”. See: Publish an archival description.
- arFileImportJob: an import of records, such as a CSV or XML import. See: Import/export.
Job status: Jobs can have 1 of 3 statuses:
- Running - The job is currently being executed. Refresh the page for an updated status.
- Completed - The job completed successfully.
- Error - The job failed to complete as requested. If there is any further information, it will be included in the “Info” column of the Jobs table.
If the job is related to a specific record, then the Job status column will also include a blue arrow icon - this acts as a hyperlink to the related record.
Info: Provides any available additional information about the status of a job. The Info column also includes a link to the full report from the console of the job, also known as the Job details page. For more information, see below: The Job details page.
User: The username of the AtoM user who initiated the job.
The Jobs page also includes a tab that allows users to view only those jobs that are currently still being executed (e.g., a status of “Running”). This can be useful when a large number of jobs are being executed simultaneously, and/or the list of jobs has not been cleared in some time. Click on the blue hyperlink to switch the view from “All jobs” to “Active jobs”. AtoM will refresh the page and the table will be limited to the selected view.
The Job details page¶
When a job is executed, the task is run by one of the AtoM workers managed by the Job scheduler, and all job details are captured by the console and recorded to the AtoM worker log. The Job details page provides users with this output via the user interface. This can be useful in many cases - for example, troubleshooting a job that has failed. Additionally, some import options allow users to skip matched records and report them in the Job details instead - an administrator can then review the output found on the Job details page against the original import to determine what records where skipped during import. For more information on imports, see: Import/export.
Jobs and user permissions¶
All authenticated (e.g. logged in) users can access the Jobs page. However, most users will only see jobs and be able to clear jobs which they have started. Only an administrator can see the status of all jobs - however, like all users, administrators can only clear jobs that belong to them.