You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sa...@apache.org on 2020/03/11 10:38:29 UTC
[cassandra] branch cassandra-3.0 updated: Use result size for built
index test
This is an automated email from the ASF dual-hosted git repository.
samt pushed a commit to branch cassandra-3.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git
The following commit(s) were added to refs/heads/cassandra-3.0 by this push:
new c81d7dc Use result size for built index test
c81d7dc is described below
commit c81d7dcc09fa1c35f190f0baad764fbe8a024679
Author: Jorge Bay Gondra <jo...@gmail.com>
AuthorDate: Wed Mar 11 10:19:28 2020 +0000
Use result size for built index test
Patch by Jorge Bay Gondra; reviewed by Sam Tunnicliffe for CASSANDRA-15565
---
.../index/internal/CassandraIndexTest.java | 23 ++++++++++++++++++----
1 file changed, 19 insertions(+), 4 deletions(-)
diff --git a/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java b/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
index 286c418..7cea9da 100644
--- a/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
+++ b/test/unit/org/apache/cassandra/index/internal/CassandraIndexTest.java
@@ -488,21 +488,36 @@ public class CassandraIndexTest extends CQLTester
@Test
public void indexCorrectlyMarkedAsBuildAndRemoved() throws Throwable
{
+ String selectBuiltIndexesQuery = String.format("SELECT * FROM %s.\"%s\"",
+ SystemKeyspace.NAME,
+ SystemKeyspace.BUILT_INDEXES);
+ UntypedResultSet rs = execute(selectBuiltIndexesQuery);
+ int initialSize = rs.size();
+
String indexName = "build_remove_test_idx";
String tableName = createTable("CREATE TABLE %s (a int, b int, c int, PRIMARY KEY (a, b))");
createIndex(String.format("CREATE INDEX %s ON %%s(c)", indexName));
waitForIndex(KEYSPACE, tableName, indexName);
// check that there are no other rows in the built indexes table
- assertRows(execute(String.format("SELECT * FROM %s.\"%s\"", SystemKeyspace.NAME, SystemKeyspace.BUILT_INDEXES)),
- row(KEYSPACE, indexName));
+ rs = execute(selectBuiltIndexesQuery);
+ int sizeAfterBuild = rs.size();
+ assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName));
// rebuild the index and verify the built status table
getCurrentColumnFamilyStore().rebuildSecondaryIndex(indexName);
waitForIndex(KEYSPACE, tableName, indexName);
// check that there are no other rows in the built indexes table
- assertRows(execute(String.format("SELECT * FROM %s.\"%s\"", SystemKeyspace.NAME, SystemKeyspace.BUILT_INDEXES)),
- row(KEYSPACE, indexName));
+ rs = execute(selectBuiltIndexesQuery);
+ assertEquals(sizeAfterBuild, rs.size());
+ assertRowsIgnoringOrderAndExtra(rs, row(KEYSPACE, indexName));
+
+ // check that dropping the index removes it from the built indexes table
+ dropIndex("DROP INDEX %s." + indexName);
+ rs = execute(selectBuiltIndexesQuery);
+ assertEquals(initialSize, rs.size());
+ rs.forEach(row -> assertFalse(row.getString("table_name").equals(KEYSPACE) // table_name is actually keyspace
+ && row.getString("index_name").equals(indexName)));
}
// this is slightly annoying, but we cannot read rows from the methods in Util as
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org