Documentation ¶
Index ¶
- Constants
- Variables
- func NewBunDB(cfg config.ServerDBConfig, logger logging.Logger, tp trace.TracerProvider, ...) (bun.IDB, error)
- func NewRedisClient(cfg config.ServerRedisConfig, tp trace.TracerProvider, mp metric.MeterProvider) (rueidis.Client, error)
- func SetDefaultIdWorker(w IdWorker)
- func WithPaging(p pagetoken) func(*bun.SelectQuery) *bun.SelectQuery
- type IdWorker
- type Seq
Constants ¶
View Source
const (
DEFAULT_ID_EPOCH = int64(1704067200000) // Defaults to: 2024-01-01T00:00:00Z
)
Variables ¶
View Source
var ( ErrIdEpochOutOfRange = errors.New("the value of 'idEpoch' must be greater than 0") ErrClusterIdBitsOutOfRange = errors.New("the value of 'clusterIdBits' must be greater than 0") ErrWorkerIdBitsOutOfRange = errors.New("the value of 'workerIdBits' must be greater than 0") ErrSequenceBitsOutOfRange = errors.New("the value of 'sequenceBits' must be greater than 0") ErrClusterIdOutOfRange = errors.New("the value of 'clusterId' out of range") ErrWorkerIdOutOfRange = errors.New("the value of 'workerId' out of range") ErrTimeMilliBitsOutOfRange = errors.New("the sum of 'clusterIdBits', 'workerIdBits' and 'sequenceBits' must be less than 23") )
Functions ¶
func NewBunDB ¶
func NewBunDB(cfg config.ServerDBConfig, logger logging.Logger, tp trace.TracerProvider, mp metric.MeterProvider) (bun.IDB, error)
NewBunDB creates a new bun.IDB instance with metrics, tracing and logging.
func NewRedisClient ¶
func NewRedisClient(cfg config.ServerRedisConfig, tp trace.TracerProvider, mp metric.MeterProvider) (rueidis.Client, error)
NewRedisClient creates a new redis client with tracing and metrics.
func SetDefaultIdWorker ¶
func SetDefaultIdWorker(w IdWorker)
SetDefaultIdWorker sets the default IdWorker instance.
func WithPaging ¶
func WithPaging(p pagetoken) func(*bun.SelectQuery) *bun.SelectQuery
WithPaging is a bun.SelectQuery modifier that adds paging to the query.
Types ¶
type IdWorker ¶
IdWorker is used to generate unique id.
func DefaultIdWorker ¶
func DefaultIdWorker() IdWorker
DefaultIdWorker returns the default IdWorker instance.
func NewIdWorker ¶
func NewIdWorker(cfg config.SnowflakeConfig, seq Seq) (IdWorker, error)
NewIdWorker creates a new IdWorker instance with the given config. If the workerSeqKey is not empty, the workerId will be generated from the Seq.
Click to show internal directories.
Click to hide internal directories.