Versions in this module Expand all Collapse all v1 v1.2.0 Feb 6, 2026 Changes in this version + func InitializeMetrics(prefix string, config *Config) error + func SetGlobalMetrics(prefix string, metricsChan chan interface{}) + func StopAndFlushMetrics() + type Config struct + IgnoredTables []string + IncludedTables []string + JoinedTables map[string][]JoinTable + PrimaryKeyTables []string + ReplicatedMasterPositionQuery string + RunFerryFromReplica bool + ShardedCopyFilterConfig *ShardedCopyFilterConfig + ShardingKey string + ShardingValue int64 + SourceDB string + SourceReplicationMaster *ghostferry.DatabaseConfig + StatsDAddress string + TargetDB string + Throttle *ghostferry.LagThrottlerConfig + func (c *Config) ValidateConfig() error + type IndexConfigPerTable struct + IndexHint string + IndexName string + type JoinTable struct + JoinColumn string + TableName string + type ShardedCopyFilter struct + IndexConfigPerTable map[string]IndexConfigPerTable + IndexHint string + JoinedTables map[string][]JoinTable + PrimaryKeyTables map[string]struct{} + ShardingKey string + ShardingValue interface{} + func NewShardedCopyFilter(config *Config) *ShardedCopyFilter + func (f *ShardedCopyFilter) ApplicableEvent(event ghostferry.DMLEvent) (bool, error) + func (f *ShardedCopyFilter) BuildSelect(columns []string, table *ghostferry.TableSchema, ...) (sq.SelectBuilder, error) + type ShardedCopyFilterConfig struct + IndexHint string + IndexHintingPerTable map[string]map[string]IndexConfigPerTable + func (c *ShardedCopyFilterConfig) IndexConfigForTables(schemaName string) map[string]IndexConfigPerTable + func (c *ShardedCopyFilterConfig) Validate() error + type ShardedTableFilter struct + JoinedTables map[string][]JoinTable + PrimaryKeyTables map[string]struct{} + ShardingKey string + SourceShard string + Tables []*regexp.Regexp + Type ShardedTableFilterType + func (s *ShardedTableFilter) ApplicableDatabases(dbs []string) ([]string, error) + func (s *ShardedTableFilter) ApplicableTables(tables []*ghostferry.TableSchema) (applicable []*ghostferry.TableSchema, err error) + type ShardedTableFilterType int64 + const IgnoredTablesFilter + const IncludedTablesFilter + type ShardingFerry struct + Ferry *ghostferry.Ferry + func NewFerry(config *Config) (*ShardingFerry, error) + func (r *ShardingFerry) AbortIfTargetDbNoLongerWriteable() + func (r *ShardingFerry) Initialize() error + func (r *ShardingFerry) Run() + func (r *ShardingFerry) Start() error