FATAL invalid sequence 8 != 1
I maintainer di solito rispondono entro 10 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 30/100
Direzione di ricerca
Inizia dallo stack trace in vendor/github.com/go-mysql-org/go-mysql/packet/conn.go e replication/binlogsyncer.go, quindi segui i punti di ingresso di gh-ost in go/binlog/gomysql_reader.go e go/logic/streamer.go. Riproduci il comando con MySQL 8 e identifica perché lo streaming del binlog segnala una sequenza di pacchetti non valida; il lavoro è completato quando gh-ost riesce a connettersi e iniziare lo streaming senza l'errore fatale.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Ubuntu 20.04.6 LTS (GNU/Linux 5.15.0-1058-aws x86_64)
MySQL verison 8.0.36-28
Ghost Version - gh-ost-1.1.6-1.x86_64.rpm
ghost command:
gh-ost
--max-load=Threads_running=25
--critical-load=Threads_running=1000
--chunk-size=1000
--max-lag-millis=1500
--user="myusername"
--password="mypassword"
--host=10.0.8.34
--database="test_db"
--table="test_table"
--verbose
--alter="CHANGE COLUMN first_col VARCHAR(100) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci' AFTER second_col"
--approve-renamed-columns
--switch-to-rbr
--allow-master-master
--cut-over=default
--exact-rowcount
--concurrent-rowcount
--default-retries=120
--initially-drop-ghost-table
--initially-drop-socket-file
--execute
error log:
2024-05-08 11:12:09 INFO starting gh-ost 1.1.6
2024-05-08 11:12:09 INFO Migrating test_db.test_table
2024-05-08 11:12:09 INFO Alter statement has column(s) renamed. gh-ost finds the following renames: map[first_col:VARCHAR(100)]; --approve-renamed-columns is given and
so migration proceeds.
2024-05-08 11:12:09 INFO inspector connection validated on 10.0.8.34:3306
2024-05-08 11:12:09 INFO User has SUPER, REPLICATION SLAVE privileges, and has ALL privileges on test_db.*
2024-05-08 11:12:09 INFO binary logs validated on 10.0.8.34:3306
2024-05-08 11:12:09 INFO Restarting replication on 10.0.8.34:3306 to make sure binlog settings apply to replication thread
2024-05-08 11:12:09 INFO Inspector initiated on ip-10-0-8-34:3306, version 8.0.36-28
2024-05-08 11:12:09 INFO Table found. Engine=InnoDB
2024-05-08 11:12:09 INFO Estimated number of rows via EXPLAIN: 256891
2024-05-08 11:12:09 INFO Recursively searching for replication master
2024-05-08 11:12:09 INFO Master found to be 10.0.9.34:3306
2024-05-08 11:12:09 INFO log_slave_updates validated on 10.0.8.34:3306
2024-05-08 11:12:09 INFO streamer connection validated on 10.0.8.34:3306
[2024/05/08 11:12:09] [info] binlogsyncer.go:148 create BinlogSyncer with config {99999 mysql 10.0.8.34 3306 myusername false false false UTC true 0 0s 0s 0 false false 0 }
2024-05-08 11:12:09 INFO Connecting binlog streamer at mysql-bin.322844:89692163
[2024/05/08 11:12:09] [info] binlogsyncer.go:374 begin to sync binlog from position (mysql-bin.322844, 89692163)
2024-05-08 11:12:09 INFO Tearing down inspector
2024-05-08 11:12:09 INFO Tearing down streamer
2024-05-08 11:12:09 FATAL invalid sequence 8 != 1
github.com/go-mysql-org/go-mysql/packet.(*Conn).ReadPacketTo
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/packet/conn.go:140
github.com/go-mysql-org/go-mysql/packet.(*Conn).ReadPacketReuseMem
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/packet/conn.go:98
github.com/go-mysql-org/go-mysql/client.(*Conn).readResult
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/client/resp.go:218
github.com/go-mysql-org/go-mysql/client.(*Conn).exec
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/client/conn.go:298
github.com/go-mysql-org/go-mysql/client.(*Conn).Execute
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/client/conn.go:158
github.com/go-mysql-org/go-mysql/replication.(*BinlogSyncer).registerSlave
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/replication/binlogsyncer.go:266
github.com/go-mysql-org/go-mysql/replication.(*BinlogSyncer).prepare
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/replication/binlogsyncer.go:346
github.com/go-mysql-org/go-mysql/replication.(*BinlogSyncer).prepareSyncPos
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/replication/binlogsyncer.go:617
github.com/go-mysql-org/go-mysql/replication.(*BinlogSyncer).StartSync
/home/meiji163/Documents/projects/gh-ost/vendor/github.com/go-mysql-org/go-mysql/replication/binlogsyncer.go:383
github.com/github/gh-ost/go/binlog.(*GoMySQLReader).ConnectBinlogStreamer
/home/meiji163/Documents/projects/gh-ost/go/binlog/gomysql_reader.go:64
github.com/github/gh-ost/go/logic.(*EventsStreamer).initBinlogReader
/home/meiji163/Documents/projects/gh-ost/go/logic/streamer.go:126
github.com/github/gh-ost/go/logic.(*EventsStreamer).InitDBConnections
/home/meiji163/Documents/projects/gh-ost/go/logic/streamer.go:116
github.com/github/gh-ost/go/logic.(*Migrator).initiateStreaming
/home/meiji163/Documents/projects/gh-ost/go/logic/migrator.go:1056
github.com/github/gh-ost/go/logic.(*Migrator).Migrate
/home/meiji163/Documents/projects/gh-ost/go/logic/migrator.go:353
main.main
/home/meiji163/Documents/projects/gh-ost/go/cmd/gh-ost/main.go:315
runtime.main
/usr/lib/go-1.18/src/runtime/proc.go:250
runtime.goexit
/usr/lib/go-1.18/src/runtime/asm_amd64.s:1571
We've been getting this error since having migrated from MySQL 5.7 to MySQL 8. What could be the issue? Any advice on what we can try to get gh-ost working again.
- Lingua principale
- Go
- Stelle
- 13.6k
- Fork
- 1.4k
- Merge medio
- 9g 19h
- PR unite (30g)
- 1
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di github/gh-ost
-
`--resume` without `--execute` drops the ghost table it correctly skipped alteringForse già presa @ajm188 l’ha presa 55 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
I maintainer di solito rispondono entro 10 giorni
-
[Suggestion] Apply simple validation to alter commandForse già presa @drkemp187 l’ha presa 106 giorni fa. Apertaenhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
github/gh-ost#1431 · 4 commenti ·
I maintainer di solito rispondono entro 10 giorni
-
Migration hangs when --attempt-instant-ddl succeedsForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
I maintainer di solito rispondono entro 10 giorni
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
I maintainer di solito rispondono entro 10 giorni
-
Atomic cut-over always fails on MySQL 9.1+: information_schema.processlist errors out (3854) while another session runs a non-BMP utf8mb4 statementForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
github/gh-ost#1780 · 1 commento ·
I maintainer di solito rispondono entro 10 giorni
Tutte le issue di github/gh-ost
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
prime-radiant-inc/evener#6325 ·
I maintainer di solito rispondono entro 1 giorno
-
team:library-maintainers
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
padok-team/burrito#1208 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
bazel-contrib/rules_go#4784 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
betterleaks/betterleaks#484 ·
I maintainer di solito rispondono entro 1 giorno