github / github/gh-ost

Bug to apply migration if binlog is compressed.

オープン
#800 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
documentation enhancement
主要言語
Go
スター
13.6k
フォーク
1.4k
平均マージ
2時間 31分
マージ済み PR(30日)
4

説明

Database Version: `10.2.25-MariaDB`
OS: `debian-linux-gnu`

The bug happens if the bank is set to save [compressed binlog](https://mariadb.com/kb/en/library/compressing-events-to-reduce-size-of-the-binary-log/). '
```
MariaDB [(none)]> show variables like 'log_bin_compress';
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| log_bin_compress | ON |
+------------------+-------+
```

Behavior:
The whole process happens correctly, but after the postponing file removal the following log occurs:

```
2019-11-13 17:53:21 INFO Grabbing voluntary lock: gh-ost.1276299.lock
2019-11-13 17:53:21 INFO Setting LOCK timeout as 6 seconds
2019-11-13 17:53:21 INFO Looking for magic cut-over table
2019-11-13 17:53:21 INFO Creating magic cut-over table `cifra`.`_songbook_log_del`
2019-11-13 17:53:21 INFO Magic cut-over table created
2019-11-13 17:53:21 INFO Locking `cifra`.`songbook_log`, `cifra`.`_songbook_log_del`
2019-11-13 17:53:22 INFO Tables locked
2019-11-13 17:53:22 INFO Session locking original & magic tables is 1276299
2019-11-13 17:53:22 INFO Writing changelog state: AllEventsUpToLockProcessed:1573667602084929375
2019-11-13 17:53:22 INFO Waiting for events up to lock
2019-11-13 17:53:25 ERROR Timeout while waiting for events up to lock
2019-11-13 17:53:25 ERROR 2019-11-13 17:53:25 ERROR Timeout while waiting for events up to lock
2019-11-13 17:53:25 INFO Looking for magic cut-over table
2019-11-13 17:53:25 INFO Will now proceed to drop magic table and unlock tables
2019-11-13 17:53:25 INFO Dropping magic cut-over table
2019-11-13 17:53:25 INFO Releasing lock from `cifra`.`songbook_log`, `cifra`.`_songbook_log_del`
2019-11-13 17:53:25 INFO Tables unlocked
```

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

このレポートには、ソースファイル、テスト、エントリーポイントがありません。まず MariaDB 10.2.25、Debian、log_bin_compress を有効にした構成でマイグレーションを再現し、その後、ファイル削除を延期した後に発生するタイムアウト周辺の、マイグレーションにおける圧縮 binlog イベント処理を追跡してください。マイグレーションが報告されたタイムアウトなしで完了し、この構成を対象とするリグレッションテストが含まれていれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
go, mariadb
領域
databases
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。