Documentation ¶
Index ¶
Constants ¶
View Source
const ( DefaultScannerGetOrphanTasksPageSize = 1000 DefaultScannerMaxTasksProcessedPerTasklistJob = 256 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Options ¶ added in v0.22.0
type Options struct { GetOrphanTasksPageSizeFn dynamicconfig.IntPropertyFn TaskBatchSizeFn dynamicconfig.IntPropertyFn EnableCleaning dynamicconfig.BoolPropertyFn MaxTasksPerJobFn dynamicconfig.IntPropertyFn ExecutorPollInterval time.Duration }
Options is used to customize scavenger operations
type Scavenger ¶
type Scavenger struct {
// contains filtered or unexported fields
}
Scavenger is the type that holds the state for task list scavenger daemon
func NewScavenger ¶
func NewScavenger( ctx context.Context, db p.TaskManager, metricsClient metrics.Client, logger log.Logger, opts *Options, ) *Scavenger
NewScavenger returns an instance of executorTask list scavenger daemon The Scavenger can be started by calling the Start() method on the returned object. Calling the Start() method will result in one complete iteration over all of the task lists in the system. For each task list, the scavenger will attempt
- deletion of expired tasks in the task lists
- deletion of task list itself, if there are no tasks and the task list hasn't been updated for a grace period
The scavenger will retry on all persistence errors infinitely and will only stop under two conditions
- either all task lists are processed successfully (or)
- Stop() method is called to stop the scavenger
Click to show internal directories.
Click to hide internal directories.