Documentation ¶
Index ¶
- func FindGapsInFingerprintBounds(ownershipRange v1.FingerprintBounds, metas []v1.FingerprintBounds) (gaps []v1.FingerprintBounds, err error)
- func NewQueueMetrics(r prometheus.Registerer) *queue.Metrics
- func SplitFingerprintKeyspaceByFactor(factor int) []v1.FingerprintBounds
- type Config
- type Limits
- type Metrics
- type Planner
- type QueueLimits
- type QueueTask
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FindGapsInFingerprintBounds ¶
func FindGapsInFingerprintBounds(ownershipRange v1.FingerprintBounds, metas []v1.FingerprintBounds) (gaps []v1.FingerprintBounds, err error)
func NewQueueMetrics ¶
func NewQueueMetrics(r prometheus.Registerer) *queue.Metrics
func SplitFingerprintKeyspaceByFactor ¶
func SplitFingerprintKeyspaceByFactor(factor int) []v1.FingerprintBounds
SplitFingerprintKeyspaceByFactor splits the keyspace covered by model.Fingerprint into contiguous non-overlapping ranges.
Types ¶
type Config ¶
type Config struct { PlanningInterval time.Duration `yaml:"planning_interval"` MinTableOffset int `yaml:"min_table_offset"` MaxTableOffset int `yaml:"max_table_offset"` MaxQueuedTasksPerTenant int `yaml:"max_queued_tasks_per_tenant"` }
Config configures the bloom-planner component.
func (*Config) RegisterFlagsWithPrefix ¶
RegisterFlagsWithPrefix registers flags for the bloom-planner configuration.
type Metrics ¶
type Metrics struct {
// contains filtered or unexported fields
}
func NewMetrics ¶
func NewMetrics( r prometheus.Registerer, getConnectedBuilders func() float64, ) *Metrics
type Planner ¶
func New ¶
func New( cfg Config, limits Limits, schemaCfg config.SchemaConfig, storeCfg storage.Config, storageMetrics storage.ClientMetrics, bloomStore bloomshipper.Store, logger log.Logger, r prometheus.Registerer, ) (*Planner, error)
func (*Planner) BuilderLoop ¶
func (p *Planner) BuilderLoop(builder protos.PlannerForBuilder_BuilderLoopServer) error
func (*Planner) NotifyBuilderShutdown ¶
func (p *Planner) NotifyBuilderShutdown( _ context.Context, req *protos.NotifyBuilderShutdownRequest, ) (*protos.NotifyBuilderShutdownResponse, error)
type QueueLimits ¶
type QueueLimits struct {
// contains filtered or unexported fields
}
func NewQueueLimits ¶
func NewQueueLimits(limits Limits) *QueueLimits
func (*QueueLimits) MaxConsumers ¶
func (c *QueueLimits) MaxConsumers(tenantID string, allConsumers int) int
MaxConsumers is used to compute how many of the available builders are allowed to handle tasks for a given tenant. 0 is returned when neither limits are applied. 0 means all builders can be used.
Click to show internal directories.
Click to hide internal directories.