[h2db]結果セットの返却について

  h2database

デフォルトの動作は、データが見つかり次第返却する方式ではなく、全件抽出してからの返却となる。そのため、件数が多いと最初のデータが返ってくるまでちょっと待たされることがある。

件数の多いデータを一気に取得するのを是とするかはまた別の議論だが、随時取得を行うオプションもある。

SET LAZY_QUERY_EXECUTION TRUE;

あるいは接続文字列に “LAZY_QUERY_EXECUTION=1;” を追加する。

H2 query taking a long time on “SELECT * FROM test” , and ResultSet not streaming from table as sqlite does

https://groups.google.com/g/h2-database/c/rgpD_y3Xp7w

組込モードでのみ動作する。遅延結果セットを開いている接続に何かするは避けるべき。デッドロックやリーク、その他バグの原因になるかも。とのこと。

LEAVE A COMMENT