2010年7月16日金曜日

MySQLのJDBCドライバーのバグでサービスダウン?

あるWEBシステム(apache+tomcat+struts2+Sping+iBatis+MySQL)
をリリースして、しばらく経ったら、頻繁にサービスダウンになって大ビンチ!

いろいろメモリーリーク調査や、設定のチューニングを行ったところ
大した効果が見えなかった。

偶然に、以下のURLが見つかりました
http://bugs.mysql.com/bug.php?id=25514

どうやら、MySQLのJDBCドライバーのバグのようで
バージョン5.0.3をやめ、5.1.xに切り替わったら
解決しました。

iBatisのバージョンにもよるかもしれませんが
JDBCドライバーのバージョンアップする際に、
iBatisの以下のような記述がNGこともわかったので
一応メモします

limit #row_count#
limit #offset#, #row_count#
limit #row_count# offset #offset#

上記の記述に使用する"#"がNGで、SQLのコンパイルエラーになってしまいます。
下記のように

limit $row_count$
limit $offset$, $row_count$
limit $row_count$ offset $offset$

"#" を "$" に変更したら、SQLのエラーがなくなりました。

世の中、このようなMySQLのJDBCドライバーの障害で
ひどい目にあった人は他にもあったのでしょうか。。。

0 件のコメント:

コメントを投稿