Replica HA_ERR_FOUND_DUPP_KEY after migration-on-replica cutover
メンテナーはふだん 10 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
まず、issue に記載されているコマンドと同時実行トランザクションを使って、MySQL 8.0.41 と gh-ost 1.1.7 で migration-on-replica cutover を再現します。報告された HA_ERR_FOUND_DUPP_KEY エラーの前後における cutover とレプリカの動作を追跡します。原因を特定し、migration-on-replica cutover を壊すことなくレプリカの障害を防止できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
I am doing table migration with gh-ost with migration-on-replica and there is transactions being processed at same time.
After cutover, there is replica failure.
Error message:
Duplicate entry '0' for key 'transaction.PRIMARY', Error_code: 1062; handler error HA_ERR_FOUND_DUPP_KEY
MySQL Version: 8.0.41-commercial
gh-ost Version: 1.1.7 (git commit: 41e72706c8caac24dc8225758eb688aae69a0ce8)
Command
./gh-ost \
-migrate-on-replica \
-ssl-allow-insecure \
-ssl \
-max-load=Threads_running=25 \
-critical-load=Threads_running=1000 \
-chunk-size=1000 \
-max-lag-millis=1500 \
-user="ghost" \
-password="xxxx" \
-host=slave-ip \
-port=3306 \
-database="transaction" \
-table="transaction" \
-verbose \
-initially-drop-ghost-table \
-initially-drop-old-table \
-alter="CHANGE ID ID BIGINT unsigned not null auto_increment" \
-cut-over=default \
-exact-rowcount \
-concurrent-rowcount \
-default-retries=120 \
-panic-flag-file=/tmp/ghost.panic.flag \
-postpone-cut-over-flag-file=./ghost.postpone.flag \
-execute
- 主要言語
- Go
- スター
- 13.6k
- フォーク
- 1.4k
- 平均マージ
- 9日 19時間
- マージ済み PR(30日)
- 1
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
github/gh-ost のほかの issue
-
`--resume` without `--execute` drops the ghost table it correctly skipped altering対応中かも @ajm188 が 56 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
メンテナーはふだん 10 日以内に返信
-
[Suggestion] Apply simple validation to alter command対応中かも @drkemp187 が 106 日前に担当しました。 オープンenhancement good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
github/gh-ost#1431 · コメント 4 件 ·
メンテナーはふだん 10 日以内に返信
-
Migration hangs when --attempt-instant-ddl succeeds対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
メンテナーはふだん 10 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 42/100
メンテナーはふだん 10 日以内に返信
-
Atomic cut-over always fails on MySQL 9.1+: information_schema.processlist errors out (3854) while another session runs a non-BMP utf8mb4 statement対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
github/gh-ost#1780 · コメント 1 件 ·
メンテナーはふだん 10 日以内に返信
似ている issue
-
type:bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
nightgauge/nightgauge#3266 ·
メンテナーはふだん 1 日以内に返信
-
area: ai-models priority: normal
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
prime-radiant-inc/evener#6325 ·
メンテナーはふだん 1 日以内に返信
-
team:library-maintainers
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
padok-team/burrito#1208 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
bazel-contrib/rules_go#4784 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信