Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Shopify/ghostferry
/ functions
Functions
1,224 in github.com/Shopify/ghostferry
⨍
Functions
1,224
◇
Types & classes
176
↓ 3 callers
Function
NonExistingPaginationKeyColumnError
NonExistingPaginationKeyColumnError exported to facilitate black box testing
table_schema_cache.go:245
↓ 3 callers
Function
NonExistingPaginationKeyError
NonExistingPaginationKeyError exported to facilitate black box testing
table_schema_cache.go:250
↓ 3 callers
Method
PaginationKey
()
dml_events.go:79
↓ 3 callers
Method
Panicf
(format string, args ...any)
logger.go:23
↓ 3 callers
Method
QueryMySQLVersion
()
sqlwrapper/ghostferry_db.go:61
↓ 3 callers
Method
ReportProgress
()
ferry.go:1057
↓ 3 callers
Method
ResumableBinlogPosition
()
dml_events.go:81
↓ 3 callers
Method
SeedSourceDB
(numberOfRows int)
testhelpers/unit_test_suite.go:78
↓ 3 callers
Method
Serialize
(lastKnownTableSchemaCache TableSchemaCache, binlogVerifyStore *BinlogVerifyStore)
state_tracker.go:308
↓ 3 callers
Method
Setup
()
testhelpers/integration_test_case.go:48
↓ 3 callers
Method
Start
()
sharding/sharding.go:119
↓ 3 callers
Function
Uint64Value
(value interface{})
dml_events.go:461
↓ 3 callers
Method
Update
(updatedConfig UpdatableConfig)
config.go:937
↓ 3 callers
Method
UpdateRow
(id int, data string)
test/go/iterative_verifier_test.go:336
↓ 3 callers
Method
Validate
()
copydb/config.go:30
↓ 3 callers
Method
WaitUntilRowCopyIsComplete
()
testhelpers/integration_test_case.go:86
↓ 3 callers
Function
appendEscapedBuffer
(buffer, value []byte, isJSON bool)
dml_events.go:542
↓ 3 callers
Function
appendEscapedValue
(buffer []byte, value interface{}, column schema.TableColumn)
dml_events.go:411
↓ 3 callers
Method
applyPrefix
(key string)
metrics.go:124
↓ 3 callers
Method
checkConnection
(dbname string, db *sql.DB)
ferry.go:1111
↓ 3 callers
Method
completedTables
()
test/go/data_iterator_test.go:169
↓ 3 callers
Method
ensureLogger
()
binlog_streamer.go:66
↓ 3 callers
Function
formatMismatches
(mismatches map[string]map[string][]InlineVerifierMismatches)
inline_verifier.go:454
↓ 3 callers
Function
getMultiTableMap
()
test/go/table_schema_cache_test.go:399
↓ 3 callers
Function
handleErr
(err error, metric interface{})
sharding/metrics.go:75
↓ 3 callers
Method
kill
test/helpers/ghostferry_helper.rb:388
↓ 3 callers
Function
minimalConfig
minimalConfig creates the smallest valid Config for testing ValidateConfig().
test/go/logger_test.go:488
↓ 3 callers
Function
newThrottler
()
test/go/lag_throttler_test.go:32
↓ 3 callers
Function
newThrottlerWithQuery
(query string)
test/go/lag_throttler_test.go:17
↓ 3 callers
Function
paginationKeyFromEventData
(table *TableSchema, rowData RowData)
dml_events.go:574
↓ 3 callers
Method
pickRandomTable
()
testhelpers/data_writer.go:266
↓ 3 callers
Method
reloadTables
()
test/go/iterative_verifier_test.go:374
↓ 3 callers
Function
requestType
(r *http.Request)
control_server.go:417
↓ 3 callers
Method
sendMetric
(metric interface{})
metrics.go:110
↓ 3 callers
Function
setupSingleTableDatabase
==================== Helper methods below ====================
test/go/trivial_integration_test.go:161
↓ 3 callers
Function
tagsToStrings
(tags []ghostferry.MetricTag)
sharding/metrics.go:63
↓ 3 callers
Function
usage
()
sharding/cmd/main.go:17
↓ 3 callers
Method
verifyAllEventsInStore
Returns mismatches in the form of db -> table -> paginationKeys
inline_verifier.go:771
↓ 2 callers
Method
ApplicableDatabases
(dbs []string)
sharding/filter.go:283
↓ 2 callers
Method
AssertTenantCopied
()
sharding/testhelpers/unit_test_suite.go:125
↓ 2 callers
Function
AssertTwoQueriesHaveEqualResult
(t *testing.T, ferry *ghostferry.Ferry, sourceQuery string, targetQuery string, args ...interface{})
testhelpers/helper_methods.go:66
↓ 2 callers
Method
AssertVerifierErrored
(msg ...string)
test/go/verifier_test.go:122
↓ 2 callers
Method
AssertVerifierMatched
()
test/go/verifier_test.go:102
↓ 2 callers
Method
AssertVerifierNotMatched
()
test/go/verifier_test.go:112
↓ 2 callers
Method
CalculateBatchSize
(rowSize int)
config.go:496
↓ 2 callers
Method
Each
(f func(*RowBatch) error)
cursor.go:87
↓ 2 callers
Method
EndCutover
(cutoverStart time.Time)
ferry.go:929
↓ 2 callers
Method
ErroredOrFailed
()
iterative_verifier.go:113
↓ 2 callers
Method
EstimateByteSize
()
row_batch.go:29
↓ 2 callers
Method
FlushAndBatchByTable
(batchsize int)
iterative_verifier.go:70
↓ 2 callers
Method
GetCompressedHashes
GetCompressedHashes compares the source data with the target data to ensure the integrity of the data being copied. The GetCompressedHashes method ch
compression_verifier.go:62
↓ 2 callers
Method
GetHashes
(db *sql.DB, schemaName, tableName, paginationKeyColumn string, columns []schema.TableColumn, paginationKeys [
iterative_verifier.go:292
↓ 2 callers
Method
GetHashesFromDifferentCollations
(data, from, to string)
test/go/iterative_verifier_collation_test.go:75
↓ 2 callers
Function
GetMd5HashesSql
(schema, table, paginationKeyColumn string, columns []schema.TableColumn, paginationKeys []interface{})
iterative_verifier.go:668
↓ 2 callers
Method
GetUint64
For historical reasons, this function ended up being used at two different places: the DataIterator and the DMLEvent (which indirectly is used by the
dml_events.go:53
↓ 2 callers
Method
Initialize
Initialize all the components of Ghostferry and connect to the Database
ferry.go:336
↓ 2 callers
Method
Initialize
Initialize allocates the event buffer channel and logger so that BufferBinlogEvents can be called safely before Run() starts in its own goroutine. Fe
binlog_writer.go:33
↓ 2 callers
Method
InitializeAndValidateConfig
()
copydb/config.go:82
↓ 2 callers
Method
IsAlmostCaughtUp
()
binlog_streamer.go:343
↓ 2 callers
Method
MarkTableAsCompleted
(table string)
state_tracker.go:246
↓ 2 callers
Method
MarshalJSON
()
pagination_key.go:87
↓ 2 callers
Method
MarshalJSON
()
pagination_key.go:173
↓ 2 callers
Method
NewBatchWriter
()
ferry.go:187
↓ 2 callers
Function
NewBinlogVerifyStore
()
inline_verifier.go:106
↓ 2 callers
Method
NewBinlogWriter
()
ferry.go:162
↓ 2 callers
Function
NewCompressionVerifier
NewCompressionVerifier first checks the map for supported compression algorithms before initializing and returning the initialized instance.
compression_verifier.go:215
↓ 2 callers
Method
NewCursor
returns a new Cursor with an embedded copy of itself
cursor.go:49
↓ 2 callers
Method
NewDataIterator
()
ferry.go:94
↓ 2 callers
Function
NewDefaultLogger
NewDefaultLogger creates a Logger from the active backend's default configuration. Used as a fallback when no logger is provided.
logger.go:145
↓ 2 callers
Function
NewFerry
(config *Config)
copydb/copydb.go:17
↓ 2 callers
Function
NewFerry
(config *Config)
sharding/sharding.go:17
↓ 2 callers
Method
NewInlineVerifier
()
ferry.go:223
↓ 2 callers
Function
NewReverifyStore
()
iterative_verifier.go:36
↓ 2 callers
Method
Progress
()
ferry.go:962
↓ 2 callers
Method
QueryRowContext
(ctx context.Context, query string, args ...interface{})
sqlwrapper/ghostferry_db.go:52
↓ 2 callers
Method
Run
Returns a list of results of the size same as the concurrency number. Returns the first error that occurs during the run. Also as soon as a single wor
utils.go:92
↓ 2 callers
Method
Run
Spawns the background tasks that actually perform the run. Wait for the background tasks to finish.
ferry.go:632
↓ 2 callers
Method
RunStandaloneDataCopy
(tables []*TableSchema)
ferry.go:833
↓ 2 callers
Function
ScanByteRow
(rows *sqlorig.Rows, columnCount int)
cursor.go:295
↓ 2 callers
Method
SerializeStateToJSON
()
ferry.go:942
↓ 2 callers
Method
SetDB
(*sql.DB)
testhelpers/data_writer.go:105
↓ 2 callers
Method
SetDataColumnCollation
(charset string)
test/go/iterative_verifier_collation_test.go:92
↓ 2 callers
Function
SetGlobalMetrics
(prefix string, metricsChan chan interface{})
sharding/metrics.go:39
↓ 2 callers
Method
Sort
(unorderedTables map[*TableSchema]PaginationKey)
data_iterator_sorter.go:38
↓ 2 callers
Method
Start
Attach event listeners for Ghostferry components and connect the binlog streamer to the source shard Note: Binlog streaming doesn't start until Run.
ferry.go:571
↓ 2 callers
Method
Start
Method override for Start in order to send status to the integration server.
test/lib/go/integrationferry/ferry.go:83
↓ 2 callers
Method
StartCutover
()
ferry.go:909
↓ 2 callers
Method
StmtFor
(p SqlPreparer, query string)
utils.go:160
↓ 2 callers
Method
TableSchema
()
row_batch.go:54
↓ 2 callers
Method
UpdateLastResumableBinlogPositionForTargetVerifier
(pos mysql.Position)
state_tracker.go:189
↓ 2 callers
Method
UpdateLastResumableSourceBinlogPosition
(pos mysql.Position)
state_tracker.go:175
↓ 2 callers
Method
UpdateLastResumableSourceBinlogPositionForInlineVerifier
(pos mysql.Position)
state_tracker.go:182
↓ 2 callers
Method
UpdateRowInDb
(id int, data string, db *sql.DB)
test/go/iterative_verifier_test.go:340
↓ 2 callers
Method
Validate
()
sharding/config.go:97
↓ 2 callers
Method
ValuesContainPaginationKey
()
row_batch.go:46
↓ 2 callers
Method
Wait
()
testhelpers/data_writer.go:138
↓ 2 callers
Method
WaitUntilBinlogStreamerCatchesUp
()
ferry.go:863
↓ 2 callers
Method
WaitUntilRowCopyIsComplete
Call this method and perform the cutover after this method returns.
ferry.go:859
↓ 2 callers
Function
WithRetriesContext
(ctx context.Context, maxRetries int, sleep time.Duration, logger Logger, verb string, f func() error)
utils.go:24
↓ 2 callers
Function
addJoinID
(db *sql.DB, dbName, tableName string)
sharding/testhelpers/unit_test_suite.go:186
← previous
next →
201–300 of 1,224, ranked by callers