package
3.6.0-alpha.1+incompatible
Repository: https://github.com/chlunde/origin.git
Documentation: pkg.go.dev
# Packages
Package shared provides reusable support for shared informer implementations.
# Functions
NewQueueRetryManager safely creates a new QueueRetryManager.
NewScheduler creates a scheduler with bucketCount buckets, a rate limiter for restricting the rate at which buckets are processed, and a function to invoke when items are scanned in a bucket.
RetryNever is a RetryFunc implementation that will always retry.
RetryNever is a RetryFunc implementation that will never retry.
# Structs
QueueRetryManager retries a resource by re-queueing it into a ReQueue as long as retryFunc returns true.
Retry describes provides additional information regarding retries.
RetryController is a RunnableController which delegates resource handling to a function and knows how to safely manage retries of a resource which failed to be successfully handled.
Scheduler is a self-balancing, rate-limited, bucketed queue that can periodically invoke an action on all items in a bucket before moving to the next bucket.
# Interfaces
Queue is a narrow abstraction of a cache.FIFO.
ReQueue is a queue that allows an object to be requeued.
RetryManager knows how to retry processing of a resource, and how to forget a resource it may be tracking the state of.
RunnableController is a controller which implements a Run loop.
StoppableController is a controller which implements a Run loop.
# Type aliases
RetryFunc should return true if the given object and error should be retried after the provided number of times.