ExtensionType: {
    entity?: string;
    marker?: StringStringType;
    pending?: number;
    search?: StringStringType;
}

User-defined (extended) types for job data. Users may interleave data into the job hash safely by using the ExtensionType interface. The data will be prefixed as necessary using an underscore or dash to ensure it is not confused with system process data.

Type declaration

  • Optionalentity?: string

    Entity to organize the job in the database by type. This is useful for querying and filtering jobs by type as the .jobs table is organized by entity. Add partial indexes to the entity column to speed up queries.

  • Optionalmarker?: StringStringType

    Custom marker data field used for adding a searchable marker to the job. markers always begin with a dash (-). Any field that does not begin with a dash will be removed and will not be inserted with the initial data set.

  • Optionalpending?: number

    Workflows that are 'pending' init with a status of -1.

    If provided, the job will initialize in a pending state, reserving only the job ID (HSETNX) and persisting search and marker (if provided). If a resume signal is sent before the specified number of seconds, the job will resume as normal, transitioning to the adjacent children of the trigger.

    If the job is not resumed within the number of seconds specified, the job will be scrubbed. No dependencies are added for a job in a pending state; however, dependencies will be added after the job is resumed if relevant.

  • Optionalsearch?: StringStringType

    Custom search data field (name/value pairs) to seed the Hash. Every field will be prefixed with an underscore before being stored with the initial Hash data set along side system process data.