Repository: cassandra
Updated Branches:
  refs/heads/trunk 5f0a77b6d -> bcd274f7c


Ninja: add beforeAndAfterFlush to 2i and filtering tests.

Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bcd274f7
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bcd274f7
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bcd274f7

Branch: refs/heads/trunk
Commit: bcd274f7c04e2cb9fe9a8155428dfa7212fe3a70
Parents: 5f0a77b
Author: Alex Petrov <oleksandr.pet...@gmail.com>
Authored: Wed Sep 21 17:08:58 2016 +0200
Committer: Tyler Hobbs <tylerlho...@gmail.com>
Committed: Wed Sep 21 10:30:18 2016 -0500

----------------------------------------------------------------------
 .../validation/entities/SecondaryIndexTest.java | 143 ++++---
 .../cql3/validation/operations/SelectTest.java  | 381 ++++++++++---------
 2 files changed, 293 insertions(+), 231 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/bcd274f7/test/unit/org/apache/cassandra/cql3/validation/entities/SecondaryIndexTest.java
----------------------------------------------------------------------
diff --git 
a/test/unit/org/apache/cassandra/cql3/validation/entities/SecondaryIndexTest.java
 
b/test/unit/org/apache/cassandra/cql3/validation/entities/SecondaryIndexTest.java
index 05c11a4..5cb76c9 100644
--- 
a/test/unit/org/apache/cassandra/cql3/validation/entities/SecondaryIndexTest.java
+++ 
b/test/unit/org/apache/cassandra/cql3/validation/entities/SecondaryIndexTest.java
@@ -174,10 +174,12 @@ public class SecondaryIndexTest extends CQLTester
         execute("INSERT INTO %s (userid, firstname, lastname, age) VALUES (?, 
'Frodo', 'Baggins', 32)", id1);
         execute("UPDATE %s SET firstname = 'Samwise', lastname = 'Gamgee', age 
= 33 WHERE userid = ?", id2);
 
-        assertEmpty(execute("SELECT firstname FROM %s WHERE userid = ? AND age 
= 33", id1));
+        beforeAndAfterFlush(() -> {
+            assertEmpty(execute("SELECT firstname FROM %s WHERE userid = ? AND 
age = 33", id1));
 
-        assertRows(execute("SELECT firstname FROM %s WHERE userid = ? AND age 
= 33", id2),
-                   row("Samwise"));
+            assertRows(execute("SELECT firstname FROM %s WHERE userid = ? AND 
age = 33", id2),
+                       row("Samwise"));
+        });
     }
 
     /**
@@ -195,9 +197,11 @@ public class SecondaryIndexTest extends CQLTester
         execute("INSERT INTO %s (id, birth_year) VALUES ('Paul', 24)");
         execute("INSERT INTO %s (id, birth_year) VALUES ('Bob', 42)");
 
-        assertRows(execute("SELECT id FROM %s WHERE birth_year = 42"),
-                   row("Tom"),
-                   row("Bob"));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT id FROM %s WHERE birth_year = 42"),
+                       row("Tom"),
+                       row("Bob"));
+        });
 
         execute("DROP INDEX %s_birth_year_idx");
 
@@ -221,8 +225,10 @@ public class SecondaryIndexTest extends CQLTester
 
         assertInvalid("SELECT * FROM %s WHERE setid = 0 AND row < 1");
 
-        assertRows(execute("SELECT * FROM %s WHERE setid = 0 AND row < 1 ALLOW 
FILTERING"),
-                   row(0, 0, 0));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE setid = 0 AND row < 1 
ALLOW FILTERING"),
+                       row(0, 0, 0));
+        });
     }
 
     /**
@@ -267,27 +273,33 @@ public class SecondaryIndexTest extends CQLTester
 
         assertTrue(waitForIndex(keyspace(), tableName, "authoridx"));
 
-        assertRows(execute("SELECT blog_id, timestamp FROM %s WHERE author = 
'bob'"),
-                   row(1, 0),
-                   row(0, 0),
-                   row(0, 2));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT blog_id, timestamp FROM %s WHERE author 
= 'bob'"),
+                       row(1, 0),
+                       row(0, 0),
+                       row(0, 2));
+        });
 
         execute("INSERT INTO %s (blog_id, timestamp, author, content) VALUES 
(?, ?, ?, ?)", 1, 1, "tom", "6th post");
         execute("INSERT INTO %s (blog_id, timestamp, author, content) VALUES 
(?, ?, ?, ?)", 1, 2, "tom", "7th post");
         execute("INSERT INTO %s (blog_id, timestamp, author, content) VALUES 
(?, ?, ?, ?)", 1, 3, "bob", "8th post");
 
-        assertRows(execute("SELECT blog_id, timestamp FROM %s WHERE author = 
'bob'"),
-                   row(1, 0),
-                   row(1, 3),
-                   row(0, 0),
-                   row(0, 2));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT blog_id, timestamp FROM %s WHERE author 
= 'bob'"),
+                       row(1, 0),
+                       row(1, 3),
+                       row(0, 0),
+                       row(0, 2));
+        });
 
         execute("DELETE FROM %s WHERE blog_id = 0 AND timestamp = 2");
 
-        assertRows(execute("SELECT blog_id, timestamp FROM %s WHERE author = 
'bob'"),
-                   row(1, 0),
-                   row(1, 3),
-                   row(0, 0));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT blog_id, timestamp FROM %s WHERE author 
= 'bob'"),
+                       row(1, 0),
+                       row(1, 3),
+                       row(0, 0));
+        });
     }
 
     /**
@@ -337,17 +349,19 @@ public class SecondaryIndexTest extends CQLTester
         execute("INSERT INTO %s (pk0, pk1, ck0, ck1, ck2, value) VALUES (4, 5, 
0, 1, 2, 3)");
         execute("INSERT INTO %s (pk0, pk1, ck0, ck1, ck2, value) VALUES (5, 0, 
1, 2, 3, 4)");
 
-        assertRows(execute("SELECT value FROM %s WHERE pk0 = 2"),
-                   row(1));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT value FROM %s WHERE pk0 = 2"),
+                       row(1));
 
-        assertRows(execute("SELECT value FROM %s WHERE ck0 = 0"),
-                   row(3));
+            assertRows(execute("SELECT value FROM %s WHERE ck0 = 0"),
+                       row(3));
 
-        assertRows(execute("SELECT value FROM %s WHERE pk0 = 3 AND pk1 = 4 AND 
ck1 = 0"),
-                   row(2));
+            assertRows(execute("SELECT value FROM %s WHERE pk0 = 3 AND pk1 = 4 
AND ck1 = 0"),
+                       row(2));
 
-        assertRows(execute("SELECT value FROM %s WHERE pk0 = 5 AND pk1 = 0 AND 
ck0 = 1 AND ck2 = 3 ALLOW FILTERING"),
-                   row(4));
+            assertRows(execute("SELECT value FROM %s WHERE pk0 = 5 AND pk1 = 0 
AND ck0 = 1 AND ck2 = 3 ALLOW FILTERING"),
+                       row(4));
+        });
     }
 
     /**
@@ -370,8 +384,11 @@ public class SecondaryIndexTest extends CQLTester
         execute("insert into %s (interval, seq, id , severity) values('t',2, 
3, 1)");
         execute("insert into %s (interval, seq, id , severity) values('t',2, 
4, 2)");
 
-        assertRows(execute("select * from %s where severity = 3 and interval = 
't' and seq =1"),
-                   row("t", 1, 4, 3));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("select * from %s where severity = 3 and 
interval = 't' and seq =1"),
+                       row("t", 1, 4, 3));
+
+        });
     }
 
     /**
@@ -402,23 +419,25 @@ public class SecondaryIndexTest extends CQLTester
         execute("INSERT INTO %s (k, v, l, s, m) VALUES (1, 0, [1, 2, 4], {},   
      {'b' : 1})");
         execute("INSERT INTO %s (k, v, l, s, m) VALUES (1, 1, [4, 5],    
{'d'},      {'a' : 1, 'b' : 3})");
 
-        // lists
-        assertRows(execute("SELECT k, v FROM %s WHERE l CONTAINS 1"), row(1, 
0), row(0, 0), row(0, 2));
-        assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND l CONTAINS 
1"), row(0, 0), row(0, 2));
-        assertRows(execute("SELECT k, v FROM %s WHERE l CONTAINS 2"), row(1, 
0), row(0, 0));
-        assertEmpty(execute("SELECT k, v FROM %s WHERE l CONTAINS 6"));
-
-        // sets
-        assertRows(execute("SELECT k, v FROM %s WHERE s CONTAINS 'a'"), row(0, 
0), row(0, 2));
-        assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND s CONTAINS 
'a'"), row(0, 0), row(0, 2));
-        assertRows(execute("SELECT k, v FROM %s WHERE s CONTAINS 'd'"), row(1, 
1));
-        assertEmpty(execute("SELECT k, v FROM %s  WHERE s CONTAINS 'e'"));
-
-        // maps
-        assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS 1"), row(1, 
0), row(1, 1), row(0, 0), row(0, 1));
-        assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND m CONTAINS 
1"), row(0, 0), row(0, 1));
-        assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS 2"), row(0, 
1));
-        assertEmpty(execute("SELECT k, v FROM %s  WHERE m CONTAINS 4"));
+        beforeAndAfterFlush(() -> {
+            // lists
+            assertRows(execute("SELECT k, v FROM %s WHERE l CONTAINS 1"), 
row(1, 0), row(0, 0), row(0, 2));
+            assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND l CONTAINS 
1"), row(0, 0), row(0, 2));
+            assertRows(execute("SELECT k, v FROM %s WHERE l CONTAINS 2"), 
row(1, 0), row(0, 0));
+            assertEmpty(execute("SELECT k, v FROM %s WHERE l CONTAINS 6"));
+
+            // sets
+            assertRows(execute("SELECT k, v FROM %s WHERE s CONTAINS 'a'"), 
row(0, 0), row(0, 2));
+            assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND s CONTAINS 
'a'"), row(0, 0), row(0, 2));
+            assertRows(execute("SELECT k, v FROM %s WHERE s CONTAINS 'd'"), 
row(1, 1));
+            assertEmpty(execute("SELECT k, v FROM %s  WHERE s CONTAINS 'e'"));
+
+            // maps
+            assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS 1"), 
row(1, 0), row(1, 1), row(0, 0), row(0, 1));
+            assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND m CONTAINS 
1"), row(0, 0), row(0, 1));
+            assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS 2"), 
row(0, 1));
+            assertEmpty(execute("SELECT k, v FROM %s  WHERE m CONTAINS 4"));
+        });
     }
 
     /**
@@ -438,10 +457,12 @@ public class SecondaryIndexTest extends CQLTester
         execute("INSERT INTO %s (k, v, m) VALUES (1, 1, {'a' : 1, 'b' : 3})");
 
         // maps
-        assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS KEY 'a'"), 
row(1, 1), row(0, 0), row(0, 1));
-        assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND m CONTAINS KEY 
'a'"), row(0, 0), row(0, 1));
-        assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS KEY 'c'"), 
row(0, 2));
-        assertEmpty(execute("SELECT k, v FROM %s  WHERE m CONTAINS KEY 'd'"));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS KEY 
'a'"), row(1, 1), row(0, 0), row(0, 1));
+            assertRows(execute("SELECT k, v FROM %s WHERE k = 0 AND m CONTAINS 
KEY 'a'"), row(0, 0), row(0, 1));
+            assertRows(execute("SELECT k, v FROM %s WHERE m CONTAINS KEY 
'c'"), row(0, 2));
+            assertEmpty(execute("SELECT k, v FROM %s  WHERE m CONTAINS KEY 
'd'"));
+        });
     }
 
     /**
@@ -464,10 +485,12 @@ public class SecondaryIndexTest extends CQLTester
         execute("INSERT INTO %s (k1, k2, v) VALUES (2, 1, 8)");
         execute("INSERT INTO %s (k1, k2, v) VALUES (3, 0, 1)");
 
-        assertRows(execute("SELECT * FROM %s WHERE k2 = 0 AND v >= 2 ALLOW 
FILTERING"),
-                   row(2, 0, 7),
-                   row(0, 0, 3),
-                   row(1, 0, 4));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE k2 = 0 AND v >= 2 ALLOW 
FILTERING"),
+                       row(2, 0, 7),
+                       row(0, 0, 3),
+                       row(1, 0, 4));
+        });
     }
 
     /**
@@ -482,11 +505,15 @@ public class SecondaryIndexTest extends CQLTester
         createIndex("create index ON %s (app_name)");
         createIndex("create index ON %s (last_access)");
 
-        assertRows(execute("select count(*) from %s where app_name='foo' and 
account='bar' and last_access > 4 allow filtering"), row(0L));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("select count(*) from %s where app_name='foo' 
and account='bar' and last_access > 4 allow filtering"), row(0L));
+        });
 
         execute("insert into %s (username, session_id, app_name, account, 
last_access, created_on) values ('toto', 'foo', 'foo', 'bar', 12, 13)");
 
-        assertRows(execute("select count(*) from %s where app_name='foo' and 
account='bar' and last_access > 4 allow filtering"), row(1L));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("select count(*) from %s where app_name='foo' 
and account='bar' and last_access > 4 allow filtering"), row(1L));
+        });
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/cassandra/blob/bcd274f7/test/unit/org/apache/cassandra/cql3/validation/operations/SelectTest.java
----------------------------------------------------------------------
diff --git 
a/test/unit/org/apache/cassandra/cql3/validation/operations/SelectTest.java 
b/test/unit/org/apache/cassandra/cql3/validation/operations/SelectTest.java
index 7d56a14..f167955 100644
--- a/test/unit/org/apache/cassandra/cql3/validation/operations/SelectTest.java
+++ b/test/unit/org/apache/cassandra/cql3/validation/operations/SelectTest.java
@@ -379,29 +379,31 @@ public class SelectTest extends CQLTester
 
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, set("lmn"));
 
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?", "xyz", "lmn"));
+        beforeAndAfterFlush(() -> {
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "xyz", "lmn"));
 
-        assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ?", 
"lmn"),
-                   row("test", 5, set("lmn"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ?", 
"lmn"),
+                       row("test", 5, set("lmn"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?", "test", "lmn"),
-                   row("test", 5, set("lmn"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "test", "lmn"),
+                       row("test", 5, set("lmn"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS ?", "test", 5, "lmn"),
-                   row("test", 5, set("lmn"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, "lmn"),
+                       row("test", 5, set("lmn"))
+            );
 
-        assertInvalidMessage("Unsupported null value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, null);
+            assertInvalidMessage("Unsupported null value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ?", "test", 5, null);
 
-        assertInvalidMessage("Unsupported unset value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, unset());
+            assertInvalidMessage("Unsupported unset value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ?", "test", 5, unset());
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ? AND categories CONTAINS ?", "xyz", "lmn", "notPresent");
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ? AND categories CONTAINS ? ALLOW FILTERING", "xyz", "lmn", 
"notPresent"));
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ? AND categories CONTAINS ?", "xyz", "lmn", "notPresent");
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ? AND categories CONTAINS ? ALLOW FILTERING", "xyz", "lmn", 
"notPresent"));
+        });
     }
 
     @Test
@@ -411,32 +413,33 @@ public class SelectTest extends CQLTester
         createIndex("CREATE INDEX ON %s(categories)");
 
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, list("lmn"));
+        beforeAndAfterFlush(() -> {
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "xyz", "lmn"));
 
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?", "xyz", "lmn"));
-
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?;", "test", "lmn"),
-                   row("test", 5, list("lmn"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?;", "test", "lmn"),
+                       row("test", 5, list("lmn"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ?", 
"lmn"),
-                   row("test", 5, list("lmn"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ?", 
"lmn"),
+                       row("test", 5, list("lmn"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS ?;", "test", 5, "lmn"),
-                   row("test", 5, list("lmn"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?;", "test", 5, "lmn"),
+                       row("test", 5, list("lmn"))
+            );
 
-        assertInvalidMessage("Unsupported null value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, null);
+            assertInvalidMessage("Unsupported null value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ?", "test", 5, null);
 
-        assertInvalidMessage("Unsupported unset value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, unset());
+            assertInvalidMessage("Unsupported unset value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ?", "test", 5, unset());
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ? AND categories CONTAINS ?",
-                             "test", 5, "lmn", "notPresent");
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS ? AND categories CONTAINS ? ALLOW FILTERING",
-                            "test", 5, "lmn", "notPresent"));
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ? AND categories CONTAINS ?",
+                                 "test", 5, "lmn", "notPresent");
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ? AND categories CONTAINS ? ALLOW FILTERING",
+                                "test", 5, "lmn", "notPresent"));
+        });
     }
 
     @Test
@@ -452,9 +455,12 @@ public class SelectTest extends CQLTester
         {
             execute("INSERT INTO %s (e, f, s) VALUES (?, ?, ?)", i, 
list("Dubai"), 3);
         }
-        assertRows(execute("SELECT * FROM %s WHERE f CONTAINS ? AND s=? allow 
filtering", "Dubai", 3),
-                   row(4, list("Dubai"), 3),
-                   row(3, list("Dubai"), 3));
+
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE f CONTAINS ? AND s=? 
allow filtering", "Dubai", 3),
+                       row(4, list("Dubai"), 3),
+                       row(3, list("Dubai"), 3));
+        });
     }
 
     @Test
@@ -465,34 +471,36 @@ public class SelectTest extends CQLTester
 
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, map("lmn", "foo"));
 
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS KEY ?", "xyz", "lmn"));
+        beforeAndAfterFlush(() -> {
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ?", "xyz", "lmn"));
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS KEY ?", "test", "lmn"),
-                   row("test", 5, map("lmn", "foo"))
-        );
-        assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS KEY ?", 
"lmn"),
-                   row("test", 5, map("lmn", "foo"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ?", "test", "lmn"),
+                       row("test", 5, map("lmn", "foo"))
+            );
+            assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS KEY 
?", "lmn"),
+                       row("test", 5, map("lmn", "foo"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS KEY ?", "test", 5, "lmn"),
-                   row("test", 5, map("lmn", "foo"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS KEY ?", "test", 5, "lmn"),
+                       row("test", 5, map("lmn", "foo"))
+            );
 
-        assertInvalidMessage("Unsupported null value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS KEY ?", "test", 5, null);
+            assertInvalidMessage("Unsupported null value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS KEY ?", "test", 5, null);
 
-        assertInvalidMessage("Unsupported unset value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS KEY ?", "test", 5, unset());
+            assertInvalidMessage("Unsupported unset value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS KEY ?", "test", 5, unset());
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS KEY ? AND categories CONTAINS KEY ?",
-                             "test", 5, "lmn", "notPresent");
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS KEY ? AND categories CONTAINS KEY ? ALLOW FILTERING",
-                            "test", 5, "lmn", "notPresent"));
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS KEY ? AND categories CONTAINS KEY ?",
+                                 "test", 5, "lmn", "notPresent");
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS KEY ? AND categories CONTAINS KEY ? ALLOW FILTERING",
+                                "test", 5, "lmn", "notPresent"));
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS KEY ? AND categories CONTAINS ?",
-                             "test", 5, "lmn", "foo");
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS KEY ? AND categories CONTAINS ?",
+                                 "test", 5, "lmn", "foo");
+        });
     }
 
     @Test
@@ -503,32 +511,34 @@ public class SelectTest extends CQLTester
 
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, map("lmn", "foo"));
 
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?", "xyz", "foo"));
+        beforeAndAfterFlush(() -> {
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "xyz", "foo"));
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?", "test", "foo"),
-                   row("test", 5, map("lmn", "foo"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "test", "foo"),
+                       row("test", 5, map("lmn", "foo"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ?", 
"foo"),
-                   row("test", 5, map("lmn", "foo"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ?", 
"foo"),
+                       row("test", 5, map("lmn", "foo"))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS ?", "test", 5, "foo"),
-                   row("test", 5, map("lmn", "foo"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, "foo"),
+                       row("test", 5, map("lmn", "foo"))
+            );
 
-        assertInvalidMessage("Unsupported null value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, null);
+            assertInvalidMessage("Unsupported null value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ?", "test", 5, null);
 
-        assertInvalidMessage("Unsupported unset value for column categories",
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ?", "test", 5, unset());
+            assertInvalidMessage("Unsupported unset value for column 
categories",
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ?", "test", 5, unset());
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ? AND categories CONTAINS ?"
-                            , "test", 5, "foo", "notPresent");
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND id = 
? AND categories CONTAINS ? AND categories CONTAINS ?",
+                                 "test", 5, "foo", "notPresent");
 
-        assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
categories CONTAINS ? AND categories CONTAINS ? ALLOW FILTERING"
-                           , "test", 5, "foo", "notPresent"));
+            assertEmpty(execute("SELECT * FROM %s WHERE account = ? AND id = ? 
AND categories CONTAINS ? AND categories CONTAINS ? ALLOW FILTERING",
+                                "test", 5, "foo", "notPresent"));
+        });
     }
 
     // See CASSANDRA-7525
@@ -541,16 +551,16 @@ public class SelectTest extends CQLTester
         createIndex("CREATE INDEX id_index ON %s(id)");
         createIndex("CREATE INDEX categories_values_index ON %s(categories)");
 
-        execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, map("lmn", "foo"));
+        beforeAndAfterFlush(() -> {
 
-        assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ? AND 
id = ? ALLOW FILTERING", "foo", 5),
-                   row("test", 5, map("lmn", "foo"))
-        );
+            execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, 
?)", "test", 5, map("lmn", "foo"));
 
-        assertRows(
-                  execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ? AND id = ? ALLOW FILTERING", "test", "foo", 5),
-                  row("test", 5, map("lmn", "foo"))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE categories CONTAINS ? 
AND id = ? ALLOW FILTERING", "foo", 5),
+                       row("test", 5, map("lmn", "foo")));
+
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ? AND id = ? ALLOW FILTERING", "test", "foo", 5),
+                       row("test", 5, map("lmn", "foo")));
+        });
     }
 
     // See CASSANDRA-8033
@@ -565,16 +575,18 @@ public class SelectTest extends CQLTester
         execute("INSERT INTO %s (k1, k2, v) VALUES (?, ?, ?)", 1, 0, set(3, 4, 
5));
         execute("INSERT INTO %s (k1, k2, v) VALUES (?, ?, ?)", 1, 1, set(4, 5, 
6));
 
-        assertRows(execute("SELECT * FROM %s WHERE k2 = ?", 1),
-                   row(0, 1, set(2, 3, 4)),
-                   row(1, 1, set(4, 5, 6))
-        );
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE k2 = ?", 1),
+                       row(0, 1, set(2, 3, 4)),
+                       row(1, 1, set(4, 5, 6))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE k2 = ? AND v CONTAINS ? 
ALLOW FILTERING", 1, 6),
-                   row(1, 1, set(4, 5, 6))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE k2 = ? AND v CONTAINS ? 
ALLOW FILTERING", 1, 6),
+                       row(1, 1, set(4, 5, 6))
+            );
 
-        assertEmpty(execute("SELECT * FROM %s WHERE k2 = ? AND v CONTAINS ? 
ALLOW FILTERING", 1, 7));
+            assertEmpty(execute("SELECT * FROM %s WHERE k2 = ? AND v CONTAINS 
? ALLOW FILTERING", 1, 7));
+        });
     }
 
     // See CASSANDRA-8073
@@ -583,23 +595,26 @@ public class SelectTest extends CQLTester
     {
         createTable("CREATE TABLE %s (a int, b int, c int, d set<int>, PRIMARY 
KEY (a, b, c))");
         createIndex("CREATE INDEX ON %s(d)");
+
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", 0, 0, 0, 
set(1, 2, 3));
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", 0, 0, 1, 
set(3, 4, 5));
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", 0, 1, 0, 
set(1, 2, 3));
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", 0, 1, 1, 
set(3, 4, 5));
 
-        assertRows(execute("SELECT * FROM %s WHERE a=? AND b=? AND d CONTAINS 
?", 0, 1, 3),
-                   row(0, 1, 0, set(1, 2, 3)),
-                   row(0, 1, 1, set(3, 4, 5))
-        );
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE a=? AND b=? AND d 
CONTAINS ?", 0, 1, 3),
+                       row(0, 1, 0, set(1, 2, 3)),
+                       row(0, 1, 1, set(3, 4, 5))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE a=? AND b=? AND d CONTAINS 
?", 0, 1, 2),
-                   row(0, 1, 0, set(1, 2, 3))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE a=? AND b=? AND d 
CONTAINS ?", 0, 1, 2),
+                       row(0, 1, 0, set(1, 2, 3))
+            );
 
-        assertRows(execute("SELECT * FROM %s WHERE a=? AND b=? AND d CONTAINS 
?", 0, 1, 5),
-                   row(0, 1, 1, set(3, 4, 5))
-        );
+            assertRows(execute("SELECT * FROM %s WHERE a=? AND b=? AND d 
CONTAINS ?", 0, 1, 5),
+                       row(0, 1, 1, set(3, 4, 5))
+            );
+        });
     }
 
     @Test
@@ -611,18 +626,20 @@ public class SelectTest extends CQLTester
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, map("lmn", "foo"));
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 6, map("lmn", "foo2"));
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "test", "foo");
-
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS KEY ?", "test", "lmn"),
-                   row("test", 5, map("lmn", "foo")),
-                   row("test", 6, map("lmn", "foo2")));
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS KEY ? AND categories CONTAINS ? ALLOW FILTERING",
-                           "test", "lmn", "foo"),
-                   row("test", 5, map("lmn", "foo")));
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ? AND categories CONTAINS KEY ? ALLOW FILTERING",
-                           "test", "foo", "lmn"),
-                   row("test", 5, map("lmn", "foo")));
+        beforeAndAfterFlush(() -> {
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "test", "foo");
+
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ?", "test", "lmn"),
+                       row("test", 5, map("lmn", "foo")),
+                       row("test", 6, map("lmn", "foo2")));
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ? AND categories CONTAINS ? ALLOW FILTERING",
+                               "test", "lmn", "foo"),
+                       row("test", 5, map("lmn", "foo")));
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ? AND categories CONTAINS KEY ? ALLOW FILTERING",
+                               "test", "foo", "lmn"),
+                       row("test", 5, map("lmn", "foo")));
+        });
     }
 
     @Test
@@ -634,18 +651,20 @@ public class SelectTest extends CQLTester
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 5, map("lmn", "foo"));
         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
"test", 6, map("lmn2", "foo"));
 
-        
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
-                             "SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ?", "test", "lmn");
-
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ?", "test", "foo"),
-                   row("test", 5, map("lmn", "foo")),
-                   row("test", 6, map("lmn2", "foo")));
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS KEY ? AND categories CONTAINS ? ALLOW FILTERING",
-                           "test", "lmn", "foo"),
-                   row("test", 5, map("lmn", "foo")));
-        assertRows(execute("SELECT * FROM %s WHERE account = ? AND categories 
CONTAINS ? AND categories CONTAINS KEY ? ALLOW FILTERING",
-                           "test", "foo", "lmn"),
-                   row("test", 5, map("lmn", "foo")));
+        beforeAndAfterFlush(() -> {
+            
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
+                                 "SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ?", "test", "lmn");
+
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ?", "test", "foo"),
+                       row("test", 5, map("lmn", "foo")),
+                       row("test", 6, map("lmn2", "foo")));
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS KEY ? AND categories CONTAINS ? ALLOW FILTERING",
+                               "test", "lmn", "foo"),
+                       row("test", 5, map("lmn", "foo")));
+            assertRows(execute("SELECT * FROM %s WHERE account = ? AND 
categories CONTAINS ? AND categories CONTAINS KEY ? ALLOW FILTERING",
+                               "test", "foo", "lmn"),
+                       row("test", 5, map("lmn", "foo")));
+        });
     }
 
     /**
@@ -1313,18 +1332,20 @@ public class SelectTest extends CQLTester
 
         execute("INSERT INTO %s (k, a, b, s, s1) VALUES (?, ?, ?, ?, ?)", 2, 
10, 10, 10, 10);
 
-        assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE s = 90 AND 
s1 = 90 ALLOW FILTERING"),
-                   row(9, 90, 90));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE s = 90 
AND s1 = 90 ALLOW FILTERING"),
+                       row(9, 90, 90));
 
-        assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE s = 90 AND 
s1 = 90 ALLOW FILTERING"),
-                   row(9, 90, 90));
+            assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE s = 90 
AND s1 = 90 ALLOW FILTERING"),
+                       row(9, 90, 90));
 
-        assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE s = 10 AND 
s1 = 10 ALLOW FILTERING"),
-                   row(1, 10, 10),
-                   row(2, 10, 10));
+            assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE s = 10 
AND s1 = 10 ALLOW FILTERING"),
+                       row(1, 10, 10),
+                       row(2, 10, 10));
 
-        assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE k = 1 AND s 
= 10 AND s1 = 10 ALLOW FILTERING"),
-                   row(1, 10, 10));
+            assertRows(execute("SELECT DISTINCT k, s, s1 FROM %s WHERE k = 1 
AND s = 10 AND s1 = 10 ALLOW FILTERING"),
+                       row(1, 10, 10));
+        });
     }
 
     /**
@@ -1425,18 +1446,20 @@ public class SelectTest extends CQLTester
                     execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", 
i, j, j, i + j);
         }
 
-        assertRowsIgnoringOrder(execute("SELECT * FROM %s WHERE a >= 1 AND c = 
2 AND s >= 1 ALLOW FILTERING"),
-                                row(1, 2, 1, 2, 3),
-                                row(3, 2, 3, 2, 5),
-                                row(4, 2, 4, 2, 6));
-
-        assertRows(execute("SELECT * FROM %s WHERE a >= 1 AND c = 2 AND s >= 1 
LIMIT 2 ALLOW FILTERING"),
-                row(1, 2, 1, 2, 3),
-                row(4, 2, 4, 2, 6));
-
-        assertRowsIgnoringOrder(execute("SELECT * FROM %s WHERE a >= 3 AND c = 
2 AND s >= 1 LIMIT 2 ALLOW FILTERING"),
-                                row(4, 2, 4, 2, 6),
-                                row(3, 2, 3, 2, 5));
+        beforeAndAfterFlush(() -> {
+            assertRowsIgnoringOrder(execute("SELECT * FROM %s WHERE a >= 1 AND 
c = 2 AND s >= 1 ALLOW FILTERING"),
+                                    row(1, 2, 1, 2, 3),
+                                    row(3, 2, 3, 2, 5),
+                                    row(4, 2, 4, 2, 6));
+
+            assertRows(execute("SELECT * FROM %s WHERE a >= 1 AND c = 2 AND s 
>= 1 LIMIT 2 ALLOW FILTERING"),
+                       row(1, 2, 1, 2, 3),
+                       row(4, 2, 4, 2, 6));
+
+            assertRowsIgnoringOrder(execute("SELECT * FROM %s WHERE a >= 3 AND 
c = 2 AND s >= 1 LIMIT 2 ALLOW FILTERING"),
+                                    row(4, 2, 4, 2, 6),
+                                    row(3, 2, 3, 2, 5));
+        });
     }
 
     @Test
@@ -1452,9 +1475,11 @@ public class SelectTest extends CQLTester
                     execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", 
i, j, j, i + j);
         }
 
-        assertRows(execute("SELECT * FROM %s WHERE c = 2 AND s >= 1 LIMIT 2 
ALLOW FILTERING"),
-                   row(1, 2, 1, 2, 3),
-                   row(4, 2, 4, 2, 6));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE c = 2 AND s >= 1 LIMIT 
2 ALLOW FILTERING"),
+                       row(1, 2, 1, 2, 3),
+                       row(4, 2, 4, 2, 6));
+        });
     }
 
     @Test
@@ -1477,7 +1502,7 @@ public class SelectTest extends CQLTester
         execute("DELETE FROM %s WHERE a = 2 AND b = 2");
 
         beforeAndAfterFlush(() -> {
-
+            
             // Checks filtering
             
assertInvalidMessage(StatementRestrictions.REQUIRES_ALLOW_FILTERING_MESSAGE,
                                  "SELECT * FROM %s WHERE c = 4 AND d = 8");
@@ -3925,10 +3950,16 @@ public class SelectTest extends CQLTester
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", "a", 1, 
"b", 2);
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", "a", 2, 
"b", 3);
         execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", "c", 3, 
"b", 4);
+        execute("INSERT INTO %s (a, b, c, d) VALUES (?, ?, ?, ?)", "d", 4, 
"d", 5);
+
+        beforeAndAfterFlush(() -> {
+            assertRows(executeFilteringOnly("SELECT * FROM %s WHERE a='a' AND 
b > 0 AND c = 'b'"),
+                       row("a", 1, "b", 2),
+                       row("a", 2, "b", 3));
 
-        assertRows(executeFilteringOnly("SELECT * FROM %s WHERE a='a' AND b > 
0 AND c = 'b'"),
-                   row("a", 1, "b", 2),
-                   row("a", 2, "b", 3));
+            assertRows(executeFilteringOnly("SELECT * FROM %s WHERE c = 'b' 
AND d = 4"),
+                       row("c", 3, "b", 4));
+        });
     }
 
     @Test
@@ -4064,22 +4095,24 @@ public class SelectTest extends CQLTester
             execute("INSERT INTO %s (pk, c1, c2, c3, v) VALUES (?, ?, ?, ?, 
?)", 1, i, i, i, i);
         }
 
-        assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 0 AND c1 < 
5 AND c2 = 1 AND v = 3 ALLOW FILTERING;"),
-                   row(1, 1, 1, 3, 3));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 0 AND 
c1 < 5 AND c2 = 1 AND v = 3 ALLOW FILTERING;"),
+                       row(1, 1, 1, 3, 3));
 
-        assertEmpty(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 1 AND c1 
< 5 AND c2 = 1 AND v = 3 ALLOW FILTERING;"));
+            assertEmpty(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 1 AND 
c1 < 5 AND c2 = 1 AND v = 3 ALLOW FILTERING;"));
 
-        assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 1 AND c2 > 
2 AND c3 > 2 AND v = 3 ALLOW FILTERING;"),
-                   row(1, 3, 3, 3, 3));
+            assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 1 AND 
c2 > 2 AND c3 > 2 AND v = 3 ALLOW FILTERING;"),
+                       row(1, 3, 3, 3, 3));
 
-        assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 1 AND c2 > 
2 AND c3 = 3 AND v = 3 ALLOW FILTERING;"),
-                   row(1, 3, 3, 3, 3));
+            assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 > 1 AND 
c2 > 2 AND c3 = 3 AND v = 3 ALLOW FILTERING;"),
+                       row(1, 3, 3, 3, 3));
 
-        assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 IN(0,1,2) 
AND c2 = 1 AND v = 3 ALLOW FILTERING;"),
-                   row(1, 1, 1, 3, 3));
+            assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 
IN(0,1,2) AND c2 = 1 AND v = 3 ALLOW FILTERING;"),
+                       row(1, 1, 1, 3, 3));
 
-        assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 IN(0,1,2) 
AND c2 = 1 AND v = 3"),
-                   row(1, 1, 1, 3, 3));
+            assertRows(execute("SELECT * FROM %s WHERE pk = 1 AND  c1 
IN(0,1,2) AND c2 = 1 AND v = 3"),
+                       row(1, 1, 1, 3, 3));
+        });
     }
 
     @Test
@@ -4094,9 +4127,11 @@ public class SelectTest extends CQLTester
         execute("INSERT INTO %s(p1, p2, v) values (?, ?, ?)", 1, 2, 3);
         execute("INSERT INTO %s(p1, p2, v) values (?, ?, ?)", 2, 1, 3);
 
-        assertRows(execute("SELECT * FROM %s WHERE p1 = 1 AND v = 3 ALLOW 
FILTERING"),
-                   row(1, 2, 3),
-                   row(1, 1, 3));
+        beforeAndAfterFlush(() -> {
+            assertRows(execute("SELECT * FROM %s WHERE p1 = 1 AND v = 3 ALLOW 
FILTERING"),
+                       row(1, 2, 3),
+                       row(1, 1, 3));
+        });
     }
 
     @Test

Reply via email to