Spool Cleaning

Spool cleaning ensures that print jobs meeting certain conditions are removed periodically from spoolers to prevent accumulation of undesired data.

Process description

YSoft SafeQ Spooler Controller based on a CRON rule defined in YSoft SafeQ Management Service starts the spool cleaning. During the spool cleaning it determines which jobs are viable for deletion and sends delete request to YSoft SafeQ Job Services for these jobs.

These deletion requests are cached in YSoft SafeQ Job Service's distributed layer.

YSoft SafeQ Spooler periodically sends a status report to YSoft SafeQ Job Service with a list of jobs it currently has on disk. YSoft SafeQ Job Service compares the job list with the cache of delete requests and sends command to spooler to delete jobs that should be removed. While doing so YSoft SafeQ Job Service updates the entries in cache with a TTL (time to live) after which the cached request will be deleted.

Spooler

Configuration options

Group

Key

Type

Default value

Description

StatusReportingOptions

ReportingInterval

TimeSpan

3 hours

Defines how often the YSoft SafeQ Spooler will report its status to the server.


MaxJitter

TimeSpan

15 minutes

Maximum random jitter added to reporting interval. This jitter also represents time, when the first report will be sent.

Job Service

Configuration options

Group

Key

Type

Default value

Description

YmqProxyOptions

DeleteJobCandidateExpirationTime

TimeSpan

7 days

Time a job delete request is kept in distributed layer before being deleted.

Limitations

  • It is possible in an edge case scenario that a job will not be deleted from spooler.

    • YSoft SafeQ Spooler sends status to YSoft SafeQ Job Service

    • YSoft SafeQ Job Service tries to send command to YSoft SafeQ Spooler to delete jobs and marks jobs with TTL of DeleteJobCandidateExpirationTime

    • YSoft SafeQ Spooler disconnects and does not receive the delete command

    • YSoft SafeQ Spooler doesn't connect within the DeleteJobCandidateExpirationTime interval

    • YSoft SafeQ Spooler connects after the cached delete request expired and is deleted