デフォルトの動作は、データが見つかり次第返却する方式ではなく、全件抽出してからの返却となる。そのため、件数が多いと最初のデータが返ってくるまでちょっと待たされることがある。
件数の多いデータを一気に取得するのを是とするかはまた別の議論だが、随時取得を行うオプションもある。
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
組込モードでのみ動作する。遅延結果セットを開いている接続に何かするは避けるべき。デッドロックやリーク、その他バグの原因になるかも。とのこと。