Versions in this module Expand all Collapse all v0 v0.0.6 Aug 31, 2017 Changes in this version + func EachMissingRow(src, dst DB, table *Table, f func([]interface{})) error + func GetIncompatibleRowCount(db DB, src, dst *Table) (int64, error) + func GetIncompatibleRowIDs(db DB, src, dst *Table) ([]int, error) + type Column struct + MaxChars int64 + Name string + Type string + func GetIncompatibleColumns(src, dst *Table) ([]*Column, error) + func (c *Column) Compatible(other *Column) bool + func (c *Column) Incompatible(other *Column) bool + type Config struct + MySQL struct{ ... } + PostgreSQL struct{ ... } + type DB interface + Close func() error + ColumnNameForSelect func(columnName string) string + DB func() *sql.DB + DisableConstraints func() error + EnableConstraints func() error + GetSchemaRows func() (*sql.Rows, error) + Open func() error + func NewMySQLDB(database string, username string, password string, host string, port int) DB + func NewPostgreSQLDB(database string, username string, password string, host string, port int, ...) DB + type Migrator interface + Migrate func() error + func NewMigrator(src, dst DB, truncateFirst bool, watcher MigratorWatcher) Migrator + type MigratorWatcher interface + DidBuildSchema func() + DidDisableConstraints func() + DidFailToMigrateRowWithError func(tableName string, err error) + DidMigrateRow func(tableName string) + EnableConstraintsDidFailWithError func(err error) + EnableConstraintsDidFinish func() + TableMigrationDidFinish func(tableName string, recordsInserted int64) + TableMigrationDidStart func(tableName string) + TruncateTableDidFinish func(tableName string) + WillBuildSchema func() + WillDisableConstraints func() + WillEnableConstraints func() + WillTruncateTable func(tableName string) + type Schema struct + Tables map[string]*Table + func BuildSchema(db DB) (*Schema, error) + func (s *Schema) GetTable(name string) (*Table, error) + type StdoutPrinter struct + func NewStdoutPrinter() *StdoutPrinter + func (s *StdoutPrinter) DidBuildSchema() + func (s *StdoutPrinter) DidDisableConstraints() + func (s *StdoutPrinter) DidFailToDisableConstraints(err error) + func (s *StdoutPrinter) DidFailToMigrateRowWithError(tableName string, err error) + func (s *StdoutPrinter) DidMigrateRow(tableName string) + func (s *StdoutPrinter) EnableConstraintsDidFailWithError(err error) + func (s *StdoutPrinter) EnableConstraintsDidFinish() + func (s *StdoutPrinter) TableMigrationDidFinish(tableName string, recordsInserted int64) + func (s *StdoutPrinter) TableMigrationDidStart(tableName string) + func (s *StdoutPrinter) TableVerificationDidFinish(tableName string, missingRows int64, missingIDs []string) + func (s *StdoutPrinter) TableVerificationDidFinishWithError(tableName string, err error) + func (s *StdoutPrinter) TableVerificationDidStart(tableName string) + func (s *StdoutPrinter) TruncateTableDidFinish(tableName string) + func (s *StdoutPrinter) WillBuildSchema() + func (s *StdoutPrinter) WillDisableConstraints() + func (s *StdoutPrinter) WillEnableConstraints() + func (s *StdoutPrinter) WillTruncateTable(tableName string) + type Table struct + Columns []*Column + Name string + func (t *Table) GetColumn(name string) (int, *Column, error) + func (t *Table) HasColumn(name string) bool + type ValidationResult struct + IncompatibleRowCount int64 + IncompatibleRowIDs []int + TableName string + type Validator interface + Validate func() ([]ValidationResult, error) + func NewValidator(src, dst DB) Validator + type Verifier interface + Verify func() error + func NewVerifier(src, dst DB, watcher VerifierWatcher) Verifier + type VerifierWatcher interface + TableVerificationDidFinish func(tableName string, missingRows int64, missingIDs []string) + TableVerificationDidFinishWithError func(tableName string, err error) + TableVerificationDidStart func(tableName string) v0.0.1 Apr 18, 2017