Skip to content

Commit 8ba534c

Browse files
committed
Use statement cache for selects
1 parent 41dd503 commit 8ba534c

1 file changed

Lines changed: 14 additions & 15 deletions

File tree

sqlite3_connection_pool/lib/src/pool.dart

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -376,21 +376,20 @@ base class AsyncConnection {
376376
List<Object?> parameters = const [],
377377
]) {
378378
return unsafeAccessOnIsolate((conn) {
379-
final resultSet = conn.database.select(sql);
380-
// final cached = conn.lookupCachedStatement(sql);
381-
382-
// final ResultSet resultSet;
383-
// if (cached != null) {
384-
// resultSet = cached.select(parameters);
385-
// cached.reset();
386-
// } else {
387-
// final stmt = conn.database.prepare(sql, checkNoTail: true);
388-
// resultSet = stmt.select(parameters);
389-
// stmt.reset();
390-
// if (!conn.storeCachedStatement(sql, stmt)) {
391-
// stmt.close();
392-
// }
393-
// }
379+
final cached = conn.lookupCachedStatement(sql);
380+
381+
final ResultSet resultSet;
382+
if (cached != null) {
383+
resultSet = cached.select(parameters);
384+
cached.reset();
385+
} else {
386+
final stmt = conn.database.prepare(sql, checkNoTail: true);
387+
resultSet = stmt.select(parameters);
388+
stmt.reset();
389+
if (!conn.storeCachedStatement(sql, stmt)) {
390+
stmt.close();
391+
}
392+
}
394393

395394
return (resultSet, _execResult(conn.database));
396395
});

0 commit comments

Comments
 (0)