「書き込み単位を4KBに変えることで性能改善。InnoDBログが大きすぎるとメモリーを食うので、InnoDBログのキャッシュ追い出しツールがある」 #dbts2013 #mysql_jp
2013-11-14 11:24:01「ダブルライトバッファはスペースID、ページIDだけを書くようにしてある。これだと16KBでなく8バイトで済む。クラッシュリカバリーの時にそのページを特定してチェック」 #dbts2013 #mysql_jp
2013-11-14 11:25:14「修復機能は捨てて、検知機能に特化させてる。検知されたら、DB全体を再構築しちゃう。最近のH/Wは優秀なので、ページは壊れてないことがほとんど」 #dbts2013 #mysql_jp
2013-11-14 11:25:51Doublewrite Bufferへの書き込み削減。書き込み量が2倍(以上)になる。圧縮していても1ページに16KBを書き込み。SSDに優しくない、FB版は壊れたページを「検知」する事に特化 #dbts2013 #mysql_jp
2013-11-14 11:26:29「ダブルライトをスキップしちゃうと壊れてるかどうかすら判らない、運用中に壊れてるページを踏むのは困るので、トレードオフを意識してこんな感じに」 #dbts2013 #mysql_jp
2013-11-14 11:26:33「super_read_only、マスターのフェイルオーバーなどでSUPER権限ですら書き込ませたくないとき」 #dbts2013 #mysql_jp
2013-11-14 11:26:58DoubleWriteBufferへの書き込み量削減、書かない代わりに検知する仕組みとしてスペースIDのみ書き込む仕組み。#dbts2013 #MySQL_jp
2013-11-14 11:27:24「システム変数の変更時にログに出す、flash cache用のフラグ、Start trans~」 Start trans~はMariaDB 5.3のアレかな? #dbts2013 #mysql_jp
2013-11-14 11:27:57その他の追加機能。super_read_only(フェールオーバーしても絶対に更新したくないマスターなんかに設定してるぽい)、一部のシステム変数を変更したときにログに出す、SQL_NO_FCACHEフラグの追加など #dbts2013 #mysql_jp
2013-11-14 11:28:32「初期段階では主要な機能は使わずにアップグレード」 ここにもMeta Data LockをMDLと略す人が #dbts2013 #mysql_jp
2013-11-14 11:28:51「段階的な移行。軽いサービスから順番に。スレーブをサービスから外してアップグレードして、サービスに戻す。全部のスレーブをアップグレードしたらどれかをマスターに昇格」 普通だw #dbts2013 #mysql_jp
2013-11-14 11:30:22「SET OPTION構文がエラーになるようになった。古いJDBC Driverは内部的にSET OPTIONを叩いているので動作しなくなる」 #dbts2013 #mysql_jp
2013-11-14 11:31:00SET OPTIONでエラーに。DROP/ALTER TABLEが遅くなった。5.5で高速なdrop/alter table実装されたが5.6で入ってなかった。現在は直っている #dbts2013 #mysql_jp
2013-11-14 11:31:36「InnoDBの統計情報永続化、起動時に統計情報を埋めるのに時間がかかる。アップグレード時に5~20分固まった。時々この更新処理がストールを起こす」 #dbts2013 #mysql_jp
2013-11-14 11:32:48これか。 MySQL Bugs: #70768: Persistent optimizer statistics often causes LOCK_open stalls http://t.co/VJauLaxwhA #dbts2013 #mysql_jp
2013-11-14 11:33:36「今のバージョンには入ってないけど、もう1つ2つ後のバージョンには本家にも入るんじゃないかな」 #dbts2013 #mysql_jp
2013-11-14 11:34:28いくつかのクエリでオプティマイザが誤動作。5.6でオプティマイザの動作が大きく変更。いくつかのクエリで非効率なプランを選択するケースが出た #dbts2013 #mysql_jp
2013-11-14 11:34:51eq-range_index_dive_limitシステム変数。INなどのイコール条件が多数ある場合、統計情報を読みに行かなくなった(default 10)。IN (1..11) => 予想スキャン件数は11/レコード総数 #dbts2013 #mysql_jp
2013-11-14 11:35:50「eq_range_index_dive_limitのデフォルトが10と小さいので11個並べちゃうとかなりトチ狂う」 #dbts2013 #mysql_jp
2013-11-14 11:35:53「レンジパーティションの実行計画も変わった。時系列のパーティションで、未来用のパーティションを作っているケースだと踏むかも」 #dbts2013 #mysql_jp
2013-11-14 11:36:51レンジパーティションの実行計画の変化。マッチしないパーティションがたくさんある場合、予想スキャン件数を過剰に低く見積もってしまう不具合(bug id=70265)。時系列パーティションで影響を受ける事がある #dbts2013 #mysql_jp
2013-11-14 11:37:36MySQL Bugs: #70265: Optimizer under-estimates rows when there are many unmatched partitions http://t.co/CWdyKYfmVt #dbts2013 #mysql_jp
2013-11-14 11:37:51