scanner

package
v0.0.0-...-c37d8b3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 24, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type RedisScanner

type RedisScanner struct {
	// contains filtered or unexported fields
}

RedisScanner scans redis keys and puts them in a trie

func NewScanner

func NewScanner(redisService RedisServiceInterface, scanProgress adapter.ProgressWriter, logger zerolog.Logger) *RedisScanner

NewScanner creates RedisScanner

func (*RedisScanner) Scan

func (s *RedisScanner) Scan(options adapter.ScanOptions, result *trie.Trie)

Scan initiates scanning process

func (*RedisScanner) ScanCluster

func (s *RedisScanner) ScanCluster(options adapter.ScanOptions, result *trie.Trie)

func (*RedisScanner) ScanSingleNode

func (s *RedisScanner) ScanSingleNode(options adapter.ScanOptions, result *trie.Trie)

type RedisServiceInterface

type RedisServiceInterface interface {
	ScanKeys(ctx context.Context, options adapter.ScanOptions, updateChan chan adapter.ShardScanUpdate)
	ScanAllShards(ctx context.Context, options adapter.ScanOptions, resultChan chan adapter.ShardScanUpdate) chan adapter.ShardInit
	GetKeysCount(ctx context.Context) (int64, error)
	GetMemoryUsage(ctx context.Context, key string) (int64, error)
	GetTotalShards(ctx context.Context) (int64, error)
	GetCurrentNodeIp() string
}

RedisServiceInterface abstraction to access redis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL