From 4dda9cf9301295c8e171327ea98f9bb5cb71dc64 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:44:30 +0000 Subject: [PATCH 01/27] spelling: aggressive --- go/logic/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/server.go b/go/logic/server.go index 7034cfd..cd1aafb 100644 --- a/go/logic/server.go +++ b/go/logic/server.go @@ -147,7 +147,7 @@ sup # Print a short status message coordinates # Print the currently inspected coordinates chunk-size= # Set a new chunk-size dml-batch-size= # Set a new dml-batch-size -nice-ratio= # Set a new nice-ratio, immediate sleep after each row-copy operation, float (examples: 0 is agrressive, 0.7 adds 70% runtime, 1.0 doubles runtime, 2.0 triples runtime, ...) +nice-ratio= # Set a new nice-ratio, immediate sleep after each row-copy operation, float (examples: 0 is aggressive, 0.7 adds 70% runtime, 1.0 doubles runtime, 2.0 triples runtime, ...) critical-load= # Set a new set of max-load thresholds max-lag-millis= # Set a new replication lag threshold replication-lag-query= # Set a new query that determines replication lag (no quotes) From f4dd4a83a4dff47331427e74cb4f3e6a0241e7cc Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:44:55 +0000 Subject: [PATCH 02/27] spelling: argument --- doc/interactive-commands.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/interactive-commands.md b/doc/interactive-commands.md index 5390690..591aa49 100644 --- a/doc/interactive-commands.md +++ b/doc/interactive-commands.md @@ -43,7 +43,7 @@ Both interfaces may serve at the same time. Both respond to simple text command, ### Querying for data -For commands that accept an argumetn as value, pass `?` (question mark) to _get_ current value rather than _set_ a new one. +For commands that accept an argument as value, pass `?` (question mark) to _get_ current value rather than _set_ a new one. ### Examples From 0c66bb4020b2030d116a236dfb03806b90d550cc Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:45:05 +0000 Subject: [PATCH 03/27] spelling: atomicity --- doc/why-triggerless.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/why-triggerless.md b/doc/why-triggerless.md index 50153b9..2ea8c81 100644 --- a/doc/why-triggerless.md +++ b/doc/why-triggerless.md @@ -16,7 +16,7 @@ Use of triggers simplifies a lot of the flow in doing a live table migration, bu Triggers are stored routines which are invoked on a per-row operation upon `INSERT`, `DELETE`, `UPDATE` on a table. They were introduced in MySQL `5.0`. -A trigger may contain a set of queries, and these queries run in the same transaction space as the query that manipulates the table. This makes for an atomicy of both the original operation on the table and the trigger-invoked operations. +A trigger may contain a set of queries, and these queries run in the same transaction space as the query that manipulates the table. This makes for an atomicity of both the original operation on the table and the trigger-invoked operations. ### Triggers, overhead From d29993ffdaa874a71192472b53660da0749b50c8 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:45:19 +0000 Subject: [PATCH 04/27] spelling: changelog --- go/logic/migrator.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/migrator.go b/go/logic/migrator.go index b320161..d604377 100644 --- a/go/logic/migrator.go +++ b/go/logic/migrator.go @@ -179,7 +179,7 @@ func (this *Migrator) canStopStreaming() bool { // onChangelogStateEvent is called when a binlog event operation on the changelog table is intercepted. func (this *Migrator) onChangelogStateEvent(dmlEvent *binlog.BinlogDMLEvent) (err error) { - // Hey, I created the changlog table, I know the type of columns it has! + // Hey, I created the changelog table, I know the type of columns it has! if hint := dmlEvent.NewColumnValues.StringColumn(2); hint != "state" { return nil } From e99333e576429d9927713e9fac0f87d86a020f6a Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:45:31 +0000 Subject: [PATCH 05/27] spelling: conversion --- go/sql/types.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/go/sql/types.go b/go/sql/types.go index 15a99ff..9c7a660 100644 --- a/go/sql/types.go +++ b/go/sql/types.go @@ -26,7 +26,7 @@ const ( const maxMediumintUnsigned int32 = 16777215 -type TimezoneConvertion struct { +type TimezoneConversion struct { ToTimezone string } @@ -35,7 +35,7 @@ type Column struct { IsUnsigned bool Charset string Type ColumnType - timezoneConversion *TimezoneConvertion + timezoneConversion *TimezoneConversion } func (this *Column) convertArg(arg interface{}) interface{} { @@ -172,7 +172,7 @@ func (this *ColumnList) GetColumnType(columnName string) ColumnType { } func (this *ColumnList) SetConvertDatetimeToTimestamp(columnName string, toTimezone string) { - this.GetColumn(columnName).timezoneConversion = &TimezoneConvertion{ToTimezone: toTimezone} + this.GetColumn(columnName).timezoneConversion = &TimezoneConversion{ToTimezone: toTimezone} } func (this *ColumnList) HasTimezoneConversion(columnName string) bool { From 84be0562a07d4b875983331836ac6849496a4f27 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:45:47 +0000 Subject: [PATCH 06/27] spelling: coordinate --- go/mysql/binlog.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/go/mysql/binlog.go b/go/mysql/binlog.go index d98c9e5..fad0a64 100644 --- a/go/mysql/binlog.go +++ b/go/mysql/binlog.go @@ -57,7 +57,7 @@ func (this BinlogCoordinates) String() string { return this.DisplayString() } -// Equals tests equality of this corrdinate and another one. +// Equals tests equality of this coordinate and another one. func (this *BinlogCoordinates) Equals(other *BinlogCoordinates) bool { if other == nil { return false @@ -95,7 +95,7 @@ func (this *BinlogCoordinates) FileSmallerThan(other *BinlogCoordinates) bool { return this.LogFile < other.LogFile } -// FileNumberDistance returns the numeric distance between this corrdinate's file number and the other's. +// FileNumberDistance returns the numeric distance between this coordinate's file number and the other's. // Effectively it means "how many roatets/FLUSHes would make these coordinates's file reach the other's" func (this *BinlogCoordinates) FileNumberDistance(other *BinlogCoordinates) int { thisNumber, _ := this.FileNumber() From 8901e6eec207d550e1904ec359c4e36c3864b495 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:46:04 +0000 Subject: [PATCH 07/27] spelling: decision --- go/logic/throttler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/throttler.go b/go/logic/throttler.go index ae95b70..989d762 100644 --- a/go/logic/throttler.go +++ b/go/logic/throttler.go @@ -39,7 +39,7 @@ var ( const frenoMagicHint = "freno" -// Throttler collects metrics related to throttling and makes informed decisison +// Throttler collects metrics related to throttling and makes informed decision // whether throttling should take place. type Throttler struct { migrationContext *base.MigrationContext From 1ae6489afcf4c03d27907e790b96e99832564e5a Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:46:26 +0000 Subject: [PATCH 08/27] spelling: detached --- go/mysql/instance_key.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/go/mysql/instance_key.go b/go/mysql/instance_key.go index ca5419e..af05a4c 100644 --- a/go/mysql/instance_key.go +++ b/go/mysql/instance_key.go @@ -83,7 +83,7 @@ func (this *InstanceKey) IsValid() bool { return len(this.Hostname) > 0 && this.Port > 0 } -// DetachedKey returns an instance key whose hostname is detahced: invalid, but recoverable +// DetachedKey returns an instance key whose hostname is detached: invalid, but recoverable func (this *InstanceKey) DetachedKey() *InstanceKey { if this.IsDetached() { return this @@ -91,7 +91,7 @@ func (this *InstanceKey) DetachedKey() *InstanceKey { return &InstanceKey{Hostname: fmt.Sprintf("%s%s", detachHint, this.Hostname), Port: this.Port} } -// ReattachedKey returns an instance key whose hostname is detahced: invalid, but recoverable +// ReattachedKey returns an instance key whose hostname is detached: invalid, but recoverable func (this *InstanceKey) ReattachedKey() *InstanceKey { if !this.IsDetached() { return this From 418462a6ca56691ffed9498f39acb71451ad48f9 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:47:15 +0000 Subject: [PATCH 09/27] spelling: dropping --- doc/understanding-output.md | 6 +++--- go/logic/applier.go | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/understanding-output.md b/doc/understanding-output.md index 8e139d8..6eff100 100644 --- a/doc/understanding-output.md +++ b/doc/understanding-output.md @@ -24,15 +24,15 @@ Initial output lines may look like this: 2016-05-19 17:57:11 INFO connection validated on 127.0.0.1:3306 2016-05-19 17:57:11 INFO rotate to next log name: mysql-bin.002587 2016-05-19 17:57:11 INFO connection validated on 127.0.0.1:3306 -2016-05-19 17:57:11 INFO Droppping table `mydb`.`_mytable_gst` +2016-05-19 17:57:11 INFO Dropping table `mydb`.`_mytable_gst` 2016-05-19 17:57:11 INFO Table dropped -2016-05-19 17:57:11 INFO Droppping table `mydb`.`_mytable_old` +2016-05-19 17:57:11 INFO Dropping table `mydb`.`_mytable_old` 2016-05-19 17:57:11 INFO Table dropped 2016-05-19 17:57:11 INFO Creating ghost table `mydb`.`_mytable_gst` 2016-05-19 17:57:11 INFO Ghost table created 2016-05-19 17:57:11 INFO Altering ghost table `mydb`.`_mytable_gst` 2016-05-19 17:57:11 INFO Ghost table altered -2016-05-19 17:57:11 INFO Droppping table `mydb`.`_mytable_osc` +2016-05-19 17:57:11 INFO Dropping table `mydb`.`_mytable_osc` 2016-05-19 17:57:11 INFO Table dropped 2016-05-19 17:57:11 INFO Creating changelog table `mydb`.`_mytable_osc` 2016-05-19 17:57:11 INFO Changelog table created diff --git a/go/logic/applier.go b/go/logic/applier.go index 419800d..bd58a96 100644 --- a/go/logic/applier.go +++ b/go/logic/applier.go @@ -213,7 +213,7 @@ func (this *Applier) dropTable(tableName string) error { sql.EscapeName(this.migrationContext.DatabaseName), sql.EscapeName(tableName), ) - log.Infof("Droppping table %s.%s", + log.Infof("Dropping table %s.%s", sql.EscapeName(this.migrationContext.DatabaseName), sql.EscapeName(tableName), ) From 9bb6959d22536ba326f07fff92d98c92526f3693 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:47:24 +0000 Subject: [PATCH 10/27] spelling: empty --- go/binlog/gomysql_reader.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/binlog/gomysql_reader.go b/go/binlog/gomysql_reader.go index 9feca87..de8a5ea 100644 --- a/go/binlog/gomysql_reader.go +++ b/go/binlog/gomysql_reader.go @@ -57,7 +57,7 @@ func NewGoMySQLReader(connectionConfig *mysql.ConnectionConfig) (binlogReader *G // ConnectBinlogStreamer func (this *GoMySQLReader) ConnectBinlogStreamer(coordinates mysql.BinlogCoordinates) (err error) { if coordinates.IsEmpty() { - return log.Errorf("Emptry coordinates at ConnectBinlogStreamer()") + return log.Errorf("Empty coordinates at ConnectBinlogStreamer()") } this.currentCoordinates = coordinates From 291c6d35945df409c4007bf7dcdfc325920084de Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:47:36 +0000 Subject: [PATCH 11/27] spelling: entirely --- go/logic/inspect.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/inspect.go b/go/logic/inspect.go index 6efacf9..538c55e 100644 --- a/go/logic/inspect.go +++ b/go/logic/inspect.go @@ -261,7 +261,7 @@ func (this *Inspector) validateGrants() error { // restartReplication is required so that we are _certain_ the binlog format and // row image settings have actually been applied to the replication thread. -// It is entriely possible, for example, that the replication is using 'STATEMENT' +// It is entirely possible, for example, that the replication is using 'STATEMENT' // binlog format even as the variable says 'ROW' func (this *Inspector) restartReplication() error { log.Infof("Restarting replication on %s:%d to make sure binlog settings apply to replication thread", this.connectionConfig.Key.Hostname, this.connectionConfig.Key.Port) From e608c16567c68f820d08ab6d3a7f65ec45ee7bde Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:47:54 +0000 Subject: [PATCH 12/27] spelling: explicitly --- go/logic/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/server.go b/go/logic/server.go index cd1aafb..8cc4fc8 100644 --- a/go/logic/server.go +++ b/go/logic/server.go @@ -305,7 +305,7 @@ help # This message return NoPrintStatusRule, err } if arg != "" && arg != this.migrationContext.OriginalTableName { - // User exlpicitly provided table name. This is a courtesy protection mechanism + // User explicitly provided table name. This is a courtesy protection mechanism err := fmt.Errorf("User commanded 'unpostpone' on %s, but migrated table is %s; ingoring request.", arg, this.migrationContext.OriginalTableName) return NoPrintStatusRule, err } From ed35b75cc939895962a303930c5a0d0c35434a21 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:48:53 +0000 Subject: [PATCH 13/27] spelling: identified --- go/mysql/instance_key.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/mysql/instance_key.go b/go/mysql/instance_key.go index af05a4c..67284d9 100644 --- a/go/mysql/instance_key.go +++ b/go/mysql/instance_key.go @@ -15,7 +15,7 @@ const ( DefaultInstancePort = 3306 ) -// InstanceKey is an instance indicator, identifued by hostname and port +// InstanceKey is an instance indicator, identified by hostname and port type InstanceKey struct { Hostname string Port int From 2b430e3cb6d7a48854bfe649ae6107476c936bd6 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:49:06 +0000 Subject: [PATCH 14/27] spelling: ignoring --- go/logic/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/server.go b/go/logic/server.go index 8cc4fc8..d16e582 100644 --- a/go/logic/server.go +++ b/go/logic/server.go @@ -306,7 +306,7 @@ help # This message } if arg != "" && arg != this.migrationContext.OriginalTableName { // User explicitly provided table name. This is a courtesy protection mechanism - err := fmt.Errorf("User commanded 'unpostpone' on %s, but migrated table is %s; ingoring request.", arg, this.migrationContext.OriginalTableName) + err := fmt.Errorf("User commanded 'unpostpone' on %s, but migrated table is %s; ignoring request.", arg, this.migrationContext.OriginalTableName) return NoPrintStatusRule, err } if atomic.LoadInt64(&this.migrationContext.IsPostponingCutOver) > 0 { From e2df0b80ebfc1b9ae612330defd2fdbe368347a2 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:49:23 +0000 Subject: [PATCH 15/27] spelling: iterating --- go/logic/applier.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/applier.go b/go/logic/applier.go index bd58a96..2607f30 100644 --- a/go/logic/applier.go +++ b/go/logic/applier.go @@ -380,7 +380,7 @@ func (this *Applier) ReadMigrationRangeValues() error { // CalculateNextIterationRangeEndValues reads the next-iteration-range-end unique key values, // which will be used for copying the next chunk of rows. Ir returns "false" if there is // no further chunk to work through, i.e. we're past the last chunk and are done with -// itrating the range (and this done with copying row chunks) +// iterating the range (and this done with copying row chunks) func (this *Applier) CalculateNextIterationRangeEndValues() (hasFurtherRange bool, err error) { this.migrationContext.MigrationIterationRangeMinValues = this.migrationContext.MigrationIterationRangeMaxValues if this.migrationContext.MigrationIterationRangeMinValues == nil { From 867e6a28b3f98232cc176ad2c049a5a034bbd600 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:49:51 +0000 Subject: [PATCH 16/27] spelling: merely --- go/logic/migrator.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/migrator.go b/go/logic/migrator.go index d604377..603f39c 100644 --- a/go/logic/migrator.go +++ b/go/logic/migrator.go @@ -387,7 +387,7 @@ func (this *Migrator) ExecOnFailureHook() (err error) { func (this *Migrator) handleCutOverResult(cutOverError error) (err error) { if this.migrationContext.TestOnReplica { - // We're merly testing, we don't want to keep this state. Rollback the renames as possible + // We're merely testing, we don't want to keep this state. Rollback the renames as possible this.applier.RenameTablesRollback() } if cutOverError == nil { From 4d64b762d96d34c9948e2b4807ecc53316f00a37 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:50:08 +0000 Subject: [PATCH 17/27] spelling: enough --- doc/command-line-flags.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/command-line-flags.md b/doc/command-line-flags.md index cea7333..e7b0116 100644 --- a/doc/command-line-flags.md +++ b/doc/command-line-flags.md @@ -82,7 +82,7 @@ The `--dml-batch-size` flag controls the size of the batched write. Allowed valu Why is this behavior configurable? Different workloads have different characteristics. Some workloads have very large writes, such that aggregating even `50` writes into a transaction makes for a significant transaction size. On other workloads write rate is high such that one just can't allow for a hundred more syncs to disk per second. The default value of `10` is a modest compromise that should probably work very well for most workloads. Your mileage may vary. -Noteworthy is that setting `--dml-batch-size` to higher value _does not_ mean `gh-ost` blocks or waits on writes. The batch size is an upper limit on transaction size, not a minimal one. If `gh-ost` doesn't have "enough" events in the pipe, it does not wait on the binary log, it just writes what it already has. This conveniently suggests that if write load is light enough for `gh-ost` to only see a few events in the binary log at a given time, then it is also light neough for `gh-ost` to apply a fraction of the batch size. +Noteworthy is that setting `--dml-batch-size` to higher value _does not_ mean `gh-ost` blocks or waits on writes. The batch size is an upper limit on transaction size, not a minimal one. If `gh-ost` doesn't have "enough" events in the pipe, it does not wait on the binary log, it just writes what it already has. This conveniently suggests that if write load is light enough for `gh-ost` to only see a few events in the binary log at a given time, then it is also light enough for `gh-ost` to apply a fraction of the batch size. ### exact-rowcount From 6a8d97c13f4f98ea39b77be94e19bf001d722e08 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:50:48 +0000 Subject: [PATCH 18/27] spelling: progress --- go/logic/migrator.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/migrator.go b/go/logic/migrator.go index 603f39c..e4856d2 100644 --- a/go/logic/migrator.go +++ b/go/logic/migrator.go @@ -820,7 +820,7 @@ func (this *Migrator) printMigrationStatusHint(writers ...io.Writer) { } } -// printStatus prints the prgoress status, and optionally additionally detailed +// printStatus prints the progress status, and optionally additionally detailed // dump of configuration. // `rule` indicates the type of output expected. // By default the status is written to standard output, but other writers can From 961e2409f688bdea031251a382d2cf8130308e3a Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:50:56 +0000 Subject: [PATCH 19/27] spelling: proceeding --- go/logic/inspect.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/inspect.go b/go/logic/inspect.go index 538c55e..6b754f8 100644 --- a/go/logic/inspect.go +++ b/go/logic/inspect.go @@ -377,7 +377,7 @@ func (this *Inspector) validateLogSlaveUpdates() error { } if this.migrationContext.InspectorIsAlsoApplier() { - log.Warningf("log_slave_updates not found on %s:%d, but executing directly on master, so I'm proceeeding", this.connectionConfig.Key.Hostname, this.connectionConfig.Key.Port) + log.Warningf("log_slave_updates not found on %s:%d, but executing directly on master, so I'm proceeding", this.connectionConfig.Key.Hostname, this.connectionConfig.Key.Port) return nil } From c76c169dceb060a221b9cf0ea2a9f35530ec5503 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:54:47 +0000 Subject: [PATCH 20/27] spelling: reference --- doc/command-line-flags.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/command-line-flags.md b/doc/command-line-flags.md index e7b0116..4c66add 100644 --- a/doc/command-line-flags.md +++ b/doc/command-line-flags.md @@ -151,7 +151,7 @@ See also: [`concurrent-migrations`](cheatsheet.md#concurrent-migrations) on the ### skip-foreign-key-checks -By default `gh-ost` verifies no foreign keys exist on the migrated table. On servers with large number of tables this check can take a long time. If you're absolutely certain no foreign keys exist (table does not referenece other table nor is referenced by other tables) and wish to save the check time, provide with `--skip-foreign-key-checks`. +By default `gh-ost` verifies no foreign keys exist on the migrated table. On servers with large number of tables this check can take a long time. If you're absolutely certain no foreign keys exist (table does not reference other table nor is referenced by other tables) and wish to save the check time, provide with `--skip-foreign-key-checks`. ### skip-renamed-columns From 4c93b7ac6db09d0f25a5851fed94f4df6b9746c1 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:55:09 +0000 Subject: [PATCH 21/27] spelling: response --- go/logic/migrator.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/migrator.go b/go/logic/migrator.go index e4856d2..e9f4cb8 100644 --- a/go/logic/migrator.go +++ b/go/logic/migrator.go @@ -742,7 +742,7 @@ func (this *Migrator) initiateStatus() error { // printMigrationStatusHint prints a detailed configuration dump, that is useful // to keep in mind; such as the name of migrated table, throttle params etc. // This gets printed at beginning and end of migration, every 10 minutes throughout -// migration, and as reponse to the "status" interactive command. +// migration, and as response to the "status" interactive command. func (this *Migrator) printMigrationStatusHint(writers ...io.Writer) { w := io.MultiWriter(writers...) fmt.Fprintln(w, fmt.Sprintf("# Migrating %s.%s; Ghost table is %s.%s", From b3be5352c538a719ea1b35b611ca327e1faf789b Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 00:56:14 +0000 Subject: [PATCH 22/27] spelling: rotates --- go/mysql/binlog.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/mysql/binlog.go b/go/mysql/binlog.go index fad0a64..50279ce 100644 --- a/go/mysql/binlog.go +++ b/go/mysql/binlog.go @@ -96,7 +96,7 @@ func (this *BinlogCoordinates) FileSmallerThan(other *BinlogCoordinates) bool { } // FileNumberDistance returns the numeric distance between this coordinate's file number and the other's. -// Effectively it means "how many roatets/FLUSHes would make these coordinates's file reach the other's" +// Effectively it means "how many rotates/FLUSHes would make these coordinates's file reach the other's" func (this *BinlogCoordinates) FileNumberDistance(other *BinlogCoordinates) int { thisNumber, _ := this.FileNumber() otherNumber, _ := other.FileNumber() From 3196c890f54a25bd449cb8130677f4c3d326ecf7 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 01:01:39 +0000 Subject: [PATCH 23/27] spelling: running --- go/logic/throttler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/throttler.go b/go/logic/throttler.go index 989d762..f1cb898 100644 --- a/go/logic/throttler.go +++ b/go/logic/throttler.go @@ -139,7 +139,7 @@ func (this *Throttler) collectReplicationLag(firstThrottlingCollected chan<- boo if this.migrationContext.TestOnReplica || this.migrationContext.MigrateOnReplica { // when running on replica, the heartbeat injection is also done on the replica. // This means we will always get a good heartbeat value. - // When runnign on replica, we should instead check the `SHOW SLAVE STATUS` output. + // When running on replica, we should instead check the `SHOW SLAVE STATUS` output. if lag, err := mysql.GetReplicationLag(this.inspector.connectionConfig); err != nil { return log.Errore(err) } else { From 94dfa0ed24f588870532fcc52426bbb086b05f8b Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 01:01:51 +0000 Subject: [PATCH 24/27] spelling: specified --- go/binlog/gomysql_reader.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/binlog/gomysql_reader.go b/go/binlog/gomysql_reader.go index de8a5ea..8eb570a 100644 --- a/go/binlog/gomysql_reader.go +++ b/go/binlog/gomysql_reader.go @@ -62,7 +62,7 @@ func (this *GoMySQLReader) ConnectBinlogStreamer(coordinates mysql.BinlogCoordin this.currentCoordinates = coordinates log.Infof("Connecting binlog streamer at %+v", this.currentCoordinates) - // Start sync with sepcified binlog file and position + // Start sync with specified binlog file and position this.binlogStreamer, err = this.binlogSyncer.StartSync(gomysql.Position{this.currentCoordinates.LogFile, uint32(this.currentCoordinates.LogPos)}) return err From cb97d6854c8b3412459e8cae9b25c0d6986fb84b Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 01:02:21 +0000 Subject: [PATCH 25/27] spelling: synchronously --- go/binlog/gomysql_reader.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/binlog/gomysql_reader.go b/go/binlog/gomysql_reader.go index 8eb570a..e218823 100644 --- a/go/binlog/gomysql_reader.go +++ b/go/binlog/gomysql_reader.go @@ -114,7 +114,7 @@ func (this *GoMySQLReader) handleRowsEvent(ev *replication.BinlogEvent, rowsEven } } // The channel will do the throttling. Whoever is reding from the channel - // decides whether action is taken sycnhronously (meaning we wait before + // decides whether action is taken synchronously (meaning we wait before // next iteration) or asynchronously (we keep pushing more events) // In reality, reads will be synchronous entriesChannel <- binlogEntry From 6bc04eee6243d3ddbc978065455b37cb590348b9 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 01:02:32 +0000 Subject: [PATCH 26/27] spelling: thing --- go/logic/inspect.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/logic/inspect.go b/go/logic/inspect.go index 6b754f8..3222481 100644 --- a/go/logic/inspect.go +++ b/go/logic/inspect.go @@ -202,7 +202,7 @@ func (this *Inspector) validateConnection() error { } // validateGrants verifies the user by which we're executing has necessary grants -// to do its thang. +// to do its thing. func (this *Inspector) validateGrants() error { query := `show /* gh-ost */ grants for current_user()` foundAll := false From 15b8d5769bcb54aa04742122e064167e59c15db1 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 8 Nov 2017 01:02:47 +0000 Subject: [PATCH 27/27] spelling: unable --- go/cmd/gh-ost/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/cmd/gh-ost/main.go b/go/cmd/gh-ost/main.go index afbccdb..04aa316 100644 --- a/go/cmd/gh-ost/main.go +++ b/go/cmd/gh-ost/main.go @@ -46,7 +46,7 @@ func main() { migrationContext := base.GetMigrationContext() flag.StringVar(&migrationContext.InspectorConnectionConfig.Key.Hostname, "host", "127.0.0.1", "MySQL hostname (preferably a replica, not the master)") - flag.StringVar(&migrationContext.AssumeMasterHostname, "assume-master-host", "", "(optional) explicitly tell gh-ost the identity of the master. Format: some.host.com[:port] This is useful in master-master setups where you wish to pick an explicit master, or in a tungsten-replicator where gh-ost is unabel to determine the master") + flag.StringVar(&migrationContext.AssumeMasterHostname, "assume-master-host", "", "(optional) explicitly tell gh-ost the identity of the master. Format: some.host.com[:port] This is useful in master-master setups where you wish to pick an explicit master, or in a tungsten-replicator where gh-ost is unable to determine the master") flag.IntVar(&migrationContext.InspectorConnectionConfig.Key.Port, "port", 3306, "MySQL port (preferably a replica, not the master)") flag.StringVar(&migrationContext.CliUser, "user", "", "MySQL user") flag.StringVar(&migrationContext.CliPassword, "password", "", "MySQL password")