Adding new job records in a database
New job records can be added to the database table by inserting rows in the "job" table. For new jobs, the following columns are used:
Column |
Type |
Mandatory |
Value |
Description |
---|---|---|---|---|
processed |
Integer |
Yes |
0 |
Indicates processing status of the job. 0 = unprocessed, 100 = processing, 1 = completed |
xml |
Blob |
Yes |
Input data |
The input data for the workflow (typically an XML document) |
processingPriority |
Integer |
No |
Priority |
The priority of the job. Jobs will be executed in order of priority (highest first) |
created |
Datetime |
No |
Creation time |
The time at which the job was created. Oldest jobs are processed first. |
Note that an id for the row will be created automatically when the row is inserted.
When the workflow reads jobs from the database, it will process the jobs in the following order: Highest processingPriority first. If multiple have the same priority, then oldest created date first. If multiple have the same created date, then lowest id first.
At most 10 jobs will be executed in each poll (to limit memory usage).
Additionally metadata values can be attached to each job. Metadata values are added by inserting rows in the metadata table. A metadata value can for instance be used to branch to different sub-workflows. The following columns are used:
Column |
Type |
Mandatory |
Value |
Description |
---|---|---|---|---|
md_key |
varchar |
Yes |
metadata key |
The unique key of this metadata value |
md_value |
varchar |
No |
metadata value |
The metadata value |
job_id |
Integer |
Yes |
id of job |
The id of the job row that the metadata value belongs to |