Versions in this module Expand all Collapse all v0 v0.1.0 Aug 11, 2026 Changes in this version + var ErrSkip = errors.New("cdcfresh: event skipped") + type EnumerateFunc func(context.Context) ([]Key, error) + type Event struct + Ack func() + Row RowEvent + type EventSource interface + Receive func(ctx context.Context) (Event, error) + type EventType uint8 + const Delete + const Insert + const Unknown + const Update + func (t EventType) String() string + type Key string + type Option func(*config) + func Backoff(base, maxDelay time.Duration) Option + func Coalesce(d time.Duration) Option + func MaxWait(d time.Duration) Option + func OnError(f func(error)) Option + func PoisonAfter(n int) Option + func Rebuild(f RebuildFunc) Option + func Reconcile(every time.Duration, enumerate EnumerateFunc) Option + func Scope(f ScopeFunc) Option + func Source(s EventSource) Option + func Workers(n int) Option + type RebuildFunc func(context.Context, Key) error + type Refresher struct + func New(opts ...Option) (*Refresher, error) + func (r *Refresher) Run(ctx context.Context) error + func (r *Refresher) Stats() Stats + type RowEvent struct + CommitTs uint64 + Data map[string]any + Database string + Old map[string]any + PKNames []string + Table string + Type EventType + type ScopeFunc func(RowEvent) []Key + type Stats struct + DirtyKeys int + EventsReceived uint64 + EventsSkipped uint64 + KeysMarked uint64 + LastEvent time.Time + LastRebuild time.Time + PoisonedKeys int + RebuildsFailed uint64 + RebuildsOK uint64 + Reconciles uint64