@@ -98,7 +98,7 @@ public boolean canBeRetried() {
9898 CHECK_RTREE_TABLE ((g ) -> {
9999 SQLite3Table table = g .getSchema ().getRandomTableOrBailout (t -> t .getName ().startsWith ("r" ));
100100 String format = String .format ("SELECT rtreecheck('%s');" , table .getName ());
101- return new QueryAdapter (format );
101+ return new QueryAdapter (format , ExpectedErrors . from ( "The database file is locked" ) );
102102 }), //
103103 VIRTUAL_TABLE_ACTION (SQLite3VirtualFTSTableCommandGenerator ::create ), //
104104 CREATE_VIEW (SQLite3ViewGenerator ::generate ), //
@@ -120,6 +120,8 @@ public boolean canBeRetried() {
120120 }
121121 indexName = rs .getString ("name" );
122122 }
123+ } catch (SQLException e ) {
124+ throw new IgnoreMeException ();
123125 }
124126 sb .append (" VALUES" );
125127 sb .append ("('" );
@@ -154,7 +156,8 @@ public boolean canBeRetried() {
154156 sb .append (" noskipscan" );
155157 }
156158 sb .append ("')" );
157- return new QueryAdapter (sb .toString (), ExpectedErrors .from ("no such table" ));
159+ return new QueryAdapter (sb .toString (),
160+ ExpectedErrors .from ("no such table" , "The database file is locked" ));
158161 }
159162 });
160163
@@ -284,7 +287,8 @@ private void checkTablesForGeneratedColumnLoops(SQLite3GlobalState globalState)
284287 Query q = new QueryAdapter ("SELECT * FROM " + table .getName (),
285288 ExpectedErrors .from ("needs an odd number of arguments" , " requires an even number of arguments" ,
286289 "generated column loop" , "integer overflow" , "malformed JSON" ,
287- "JSON cannot hold BLOB values" , "JSON path error" , "labels must be TEXT" ));
290+ "JSON cannot hold BLOB values" , "JSON path error" , "labels must be TEXT" ,
291+ "table does not support scanning" ));
288292 if (!q .execute (globalState )) {
289293 throw new IgnoreMeException ();
290294 }
0 commit comments