Skip to content

hmatsu47/aurora_mysql1to3diff

Repository files navigation

Amazon Aurora MySQL v1 → v3 差分調査用情報置き場

こちらは、

の詳細調査結果公開用リポジトリです。

調査状況へのリンク

調査対象外

その他

  • 調査結果にはないが、主キー以外のインデックスがないテーブルからのデータ取得時、ORDER BYが指定されないケースで複数行結果が返る場合のソート順が不定に
    • 本来これは「不定」が正しいし、MySQL 5.6 のマニュアルにも「不定」と書いてあった
    • 以前は主キー順でデータ取得できたが、MySQL 8.0 では本当に「不定」になった
  • パラメータグループでデフォルトどおりexplicit_defaults_for_timestamp1(有効)を指定した状態で、
    • MySQL Connector/J のプリペアドステートメントを使って
    • NOT NULLかつDEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMPTIMESTAMPDATETIME列に対して
    • nullUPDATEしたときの挙動が、以下のように変化するケースがある
      • Aurora MySQL v1・MySQL Connector/J 5.1 の組み合わせ:UPDATE時のタイムスタンプで更新
      • Aurora MySQL v3・MySQL Connector/J 8.0 の組み合わせ:「NOTNULL列にnullUPDATEすることはできない」旨のエラーが発生
    • 同様の事象が発生した場合はnullではなくNOW()などでUPDATEする形に SQL 文(プリペアドステートメント)を書き換える
  • MySQL Connector/J でFLOAT(M,D)DOUBLE(M,D)型の列をjava.math.BigDecimal値として取り込む際に
    • 5.1 時代はD(小数点以下の桁数)を自動的にスケールとして設定する実装になっていた
    • 8.0 では明示的なsetScale(D)が必要になった
  • 日付(日時)と文字列の比較

About

Amazon Aurora MySQL v1 → v3 差分調査用

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published