MCPcopy Index your code

hub / github.com/Shopify/ghostferry / functions

Functions1,224 in github.com/Shopify/ghostferry

↓ 7 callersFunctionNewSlogLogger
NewSlogLogger returns a *slog.Logger that routes all log output through the given ghostferry Logger. Use this to bridge third-party libraries that log
slog_handler.go:127
↓ 7 callersMethodNumericPosition
NumericPosition calculates a rough float position for progress tracking. Note: This method only uses the first 8 bytes of the binary key for progress
pagination_key.go:142
↓ 7 callersFunctionSetLogOutput
SetLogOutput sets the output writer for the active backend. This is primarily useful for testing (capturing log output).
logger.go:173
↓ 7 callersMethodSize
()
row_batch.go:50
↓ 7 callersMethodStartInBackground
Start the verifier in the background during the cutover phase. Traditionally, this is called from within the ControlServer. This method maybe called
verifier.go:66
↓ 7 callersMethodVerifyBeforeCutover
If the Verifier needs to do anything immediately after the DataIterator finishes copying data and before cutover occurs, implement this function.
verifier.go:55
↓ 7 callersMethodWarnf
(format string, args ...any)
logger.go:20
↓ 6 callersMethodBuildConfig
()
config.go:35
↓ 6 callersMethodInitialize
()
iterative_verifier.go:171
↓ 6 callersMethodMySQLConfig
()
config.go:84
↓ 6 callersFunctionNewLagThrottler
(config *LagThrottlerConfig)
throttler.go:91
↓ 6 callersFunctionNewTestConfig
()
testhelpers/test_ferry.go:29
↓ 6 callersMethodPost
(client *http.Client)
http_callback.go:17
↓ 6 callersMethodPrepare
(string)
cursor.go:17
↓ 6 callersMethodSet
(b bool)
utils.go:71
↓ 6 callersMethodVerifyDuringCutover
()
iterative_verifier.go:235
↓ 6 callersMethodVerifyOnce
()
iterative_verifier.go:183
↓ 6 callersMethodcallCustomAction
(f func(*TestFerry, *sql.DB, *sql.DB))
testhelpers/integration_test_case.go:168
↓ 6 callersMethodon_callback
(callback, &block)
test/helpers/ghostferry_helper.rb:359
↓ 6 callersFunctionreturnSuccess
(w http.ResponseWriter, r *http.Request)
control_server.go:449
↓ 5 callersMethodAdd
(table *TableSchema, paginationKey string)
inline_verifier.go:126
↓ 5 callersFunctionCheckDbIsAReplica
(db *sql.DB)
utils.go:254
↓ 5 callersMethodCopyData
()
testhelpers/integration_test_case.go:40
↓ 5 callersMethodCreateDatabasesAndTables
()
copydb/copydb.go:43
↓ 5 callersMethodDisabled
()
throttler.go:14
↓ 5 callersMethodFlushAndStop
()
binlog_streamer.go:347
↓ 5 callersMethodFlushBinlogAndStopStreaming
After you stop writing to the source and made sure that all inflight transactions to the source are completed, call this method to ensure that the bin
ferry.go:876
↓ 5 callersMethodIsDone
()
verifier.go:44
↓ 5 callersMethodIsMax
IsMax returns true if this key represents the maximum possible value for its type.
pagination_key.go:31
↓ 5 callersMethodMinSourceBinlogPosition
()
state_tracker.go:92
↓ 5 callersFunctionNewBinaryKeyWithColumn
(column string, value []byte)
pagination_key.go:112
↓ 5 callersFunctionNewBinlogDeleteEvents
(eventBase *DMLEventBase, rowsEvent *replication.RowsEvent)
dml_events.go:253
↓ 5 callersFunctionNewBinlogUpdateEvents
(eventBase *DMLEventBase, rowsEvent *replication.RowsEvent)
dml_events.go:193
↓ 5 callersFunctionNewCorrectVerificationResult
()
verifier.go:29
↓ 5 callersFunctionNewRowBatch
(table *TableSchema, values []RowData, paginationKeyIndex int)
row_batch.go:16
↓ 5 callersMethodNumericPosition
NumericPosition returns a float64 approximation for progress tracking and estimation.
pagination_key.go:25
↓ 5 callersFunctionQuotedTableName
(table *TableSchema)
table_schema_cache.go:120
↓ 5 callersFunctionScanGenericRow
(rows *sqlorig.Rows, columnCount int)
cursor.go:283
↓ 5 callersMethodSetDisabled
(bool)
throttler.go:15
↓ 5 callersMethodSetPaused
(bool)
throttler.go:16
↓ 5 callersFunctionShowMasterStatusBinlogPosition
(db *sql.DB)
utils.go:208
↓ 5 callersMethodStopTargetVerifier
()
ferry.go:902
↓ 5 callersMethodTeardown
()
testhelpers/integration_test_case.go:131
↓ 5 callersMethodTimer
(key string, duration time.Duration, tags []MetricTag, sampleRate float64)
metrics.go:80
↓ 5 callersMethodTimestamp
()
dml_events.go:83
↓ 5 callersMethodValidateConfig
()
sharding/config.go:38
↓ 5 callersMethodVerifyBeforeCutover
()
iterative_verifier.go:204
↓ 5 callersFunctionWaitForThrottle
(t Throttler)
throttler.go:20
↓ 5 callersMethodassertBothFilters
(expected []string, filter copydb.FilterAndRewriteConfigs, list []string)
copydb/test/filter_test.go:129
↓ 5 callersMethodassertLoadTablesWithCascadingPaginationColumnConfig
(table, expectedpaginationColumn string, cascadingPaginationColumnConfig *ghostferry.CascadingPaginationColumn
test/go/table_schema_cache_test.go:35
↓ 5 callersFunctioncompareDecompressedData
(source, target map[string]map[string][]byte)
inline_verifier.go:657
↓ 5 callersMethodrequestMap
(r *http.Request)
sharding/test/callbacks_test.go:181
↓ 5 callersMethodrun_expecting_failure
Same as above - ensure that the datawriter has been stopped properly (if you're using stop_datawriter_during_cutover).
test/helpers/ghostferry_helper.rb:126
↓ 5 callersFunctionsetupIterativeVerifierFromFerry
(v *ghostferry.IterativeVerifier, f *ghostferry.Ferry)
test/go/iterative_verifier_integration_test.go:247
↓ 5 callersFunctionverifyValuesHasTheSameLengthAsColumns
(table *TableSchema, values ...RowData)
dml_events.go:335
↓ 4 callersMethodApplicableTables
(tables []*ghostferry.TableSchema)
sharding/filter.go:287
↓ 4 callersMethodAssertIdentical
(data, from, to string)
test/go/iterative_verifier_collation_test.go:65
↓ 4 callersMethodBegin
()
sqlwrapper/ghostferry_db.go:56
↓ 4 callersMethodCompare
(other PaginationKey)
pagination_key.go:126
↓ 4 callersMethodDebugf
(format string, args ...any)
logger.go:16
↓ 4 callersMethodGetTableListWithPriority
Helper to sort a given map of tables with a second list giving a priority. If an element is present in the input and the priority lists, the item will
table_schema_cache.go:354
↓ 4 callersMethodIsCaughtUp
(targetMasterPos mysql.Position, retries int)
wait_until_replica_is_caught_up_to_master.go:56
↓ 4 callersMethodIsStarted
()
verifier.go:40
↓ 4 callersFunctionLoadResults
(rows *sqlorig.Rows)
testhelpers/helper_methods.go:108
↓ 4 callersFunctionNewMysqlPosition
(file string, position uint32, err error, db *sql.DB)
utils.go:234
↓ 4 callersFunctionNewStateTracker
(speedLogCount int)
state_tracker.go:151
↓ 4 callersFunctionNewStaticTableFilter
(dbs, tables FilterAndRewriteConfigs)
copydb/filter.go:23
↓ 4 callersMethodNewValues
()
dml_events.go:78
↓ 4 callersMethodOldValues
()
dml_events.go:77
↓ 4 callersFunctionParseLogLevel
ParseLogLevel converts a string to a LogLevel. It returns the parsed level and true on success, or LogLevelInfo and false if the string is not recogni
logger.go:46
↓ 4 callersFunctionRandData
()
testhelpers/data_writer.go:15
↓ 4 callersMethodReportError
Usually called from Fatal. When called from Fatal, if this method returns true, Fatal should panic, otherwise it should not.
error_handler.go:14
↓ 4 callersMethodResult
Returns the result and the status of the verification. To check the status, call IsStarted() and IsDone() on VerificationResultAndStatus. If the veri
verifier.go:91
↓ 4 callersMethodRowCount
()
inline_verifier.go:61
↓ 4 callersMethodRowMd5Query
()
table_schema_cache.go:86
↓ 4 callersMethodStop
()
testhelpers/data_writer.go:103
↓ 4 callersFunctionTargetToSourceRewrites
(databaseRewrites map[string]string)
table_schema_cache.go:337
↓ 4 callersMethodUpdateBatchSizes
(db *sql.DB, tables TableSchemaCache)
config.go:446
↓ 4 callersMethodcolumnsToVerify
(table *TableSchema)
iterative_verifier.go:563
↓ 4 callersFunctionensureTestRowsAreReverified
(ferry *testhelpers.TestFerry)
test/go/iterative_verifier_integration_test.go:262
↓ 4 callersMethodkill_and_wait_for_exit
test/helpers/ghostferry_helper.rb:383
↓ 4 callersMethodlogDeprecated
(deprecatedConfig string, newConfig string)
config.go:933
↓ 4 callersMethodmergeWithDefaultTags
(tags []MetricTag)
metrics.go:128
↓ 4 callersFunctionselectiveFerry
(tenantId interface{})
sharding/test/trivial_integration_test.go:23
↓ 4 callersFunctionsetupLagTable
(db *sql.DB, ctx context.Context)
test/go/lag_throttler_test.go:36
↓ 4 callersFunctionzerologContextField
zerologContextField adds a key-value pair to a zerolog.Context using the native typed method when possible, avoiding Interface() reflection for the mo
zerolog_logger.go:43
↓ 3 callersMethodAddBinlogEventHandler
Attach an event handler to a replication BinLogEvent We only support attaching events to any of the events defined in https://github.com/go-mysql-org/
binlog_streamer.go:320
↓ 3 callersMethodAddDoneListener
(listener func() error)
data_iterator.go:203
↓ 3 callersMethodApplicableEvent
ApplicableEvent is used to filter events for rows that have been filtered in ConstrainSelect. ApplicableEvent should return true if the event is for a
filter.go:25
↓ 3 callersMethodAsSQLQuery
(schemaName, tableName string)
row_batch.go:62
↓ 3 callersMethodAssertOnlyDataOnSourceAndTargetIs
(data string)
testhelpers/integration_test_case.go:174
↓ 3 callersFunctionAssertQueriesHaveEqualResult
(t *testing.T, ferry *ghostferry.Ferry, query string, args ...interface{})
testhelpers/helper_methods.go:87
↓ 3 callersMethodAssertQueriesHaveEqualResult
(query string, args ...interface{})
testhelpers/integration_test_case.go:193
↓ 3 callersMethodConnectBinlogStreamerToMysqlFrom
(startFromBinlogPosition mysql.Position)
binlog_streamer.go:124
↓ 3 callersMethodCopy
()
inline_verifier.go:84
↓ 3 callersFunctionFixturePath
(name string)
testhelpers/fixtures.go:14
↓ 3 callersMethodIndexConfigForTables
SchemaName => TableName => IndexConfig
sharding/config.go:88
↓ 3 callersFunctionInt64Value
(value interface{})
dml_events.go:477
↓ 3 callersMethodMarshalJSON
MarshalJSON serializes the key for state persistence and checkpointing.
pagination_key.go:29
↓ 3 callersFunctionNewStmtCache
()
utils.go:154
← previousnext →101–200 of 1,224, ranked by callers