package retention
import "github.com/influxdata/influxdb/services/retention"
Package retention provides the retention policy enforcement service.
Index ¶
- func OSSDropShardMetaRef(mc MetaClient) func(uint64, []uint64) error
- type Config
- func NewConfig() Config
- func (c Config) Diagnostics() (*diagnostics.Diagnostics, error)
- func (c Config) Validate() error
- type MetaClient
- type Service
Functions ¶
func OSSDropShardMetaRef ¶
func OSSDropShardMetaRef(mc MetaClient) func(uint64, []uint64) error
OSSDropShardMetaRef creates a closure appropriate for OSS to use as DropShardMetaRef.
Types ¶
type Config ¶
type Config struct { Enabled bool `toml:"enabled"` CheckInterval toml.Duration `toml:"check-interval"` }
Config represents the configuration for the retention service.
func NewConfig ¶
func NewConfig() Config
NewConfig returns an instance of Config with defaults.
func (Config) Diagnostics ¶
func (c Config) Diagnostics() (*diagnostics.Diagnostics, error)
Diagnostics returns a diagnostics representation of a subset of the Config.
func (Config) Validate ¶
Validate returns an error if the Config is invalid.
type MetaClient ¶
type MetaClient interface { Databases() []meta.DatabaseInfo DeleteShardGroup(database, policy string, id uint64) error DropShard(id uint64) error PruneShardGroups() error }
type Service ¶
type Service struct { MetaClient TSDBStore interface { ShardIDs() []uint64 DeleteShard(shardID uint64) error SetShardNewReadersBlocked(shardID uint64, blocked bool) error ShardInUse(shardID uint64) (bool, error) } // DropShardRef is a function that takes a shard ID and removes the // "reference" to it in the meta data. For OSS, this would be a DropShard // operation. For Enterprise, this would be a RemoveShardOwner operation. // Also provided is owners, the list of node IDs of the shard owners // according to the meta store. For OSS, owners will always be empty. // Enterprise can use owners to optimize out calls to RemoveShardOwner // if the current node doesn't actually own the shardID. This prevents // a lot of unnecessary RPC calls. DropShardMetaRef func(shardID uint64, owners []uint64) error // contains filtered or unexported fields }
Service represents the retention policy enforcement service.
func NewService ¶
NewService returns a configured retention policy enforcement service.
func (*Service) Close ¶
Close stops retention policy enforcement.
func (*Service) DeletionCheck ¶
func (s *Service) DeletionCheck()
func (*Service) Open ¶
Open starts retention policy enforcement.
func (*Service) WithLogger ¶
WithLogger sets the logger on the service.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
services/retention/helpers |
- Version
- v1.12.0 (latest)
- Published
- Apr 8, 2025
- Platform
- linux/amd64
- Imports
- 10 packages
- Last checked
- 2 days ago –
Tools for package owners.