This is an automated email from the ASF dual-hosted git repository. hossman pushed a commit to branch jira/SOLR-6312 in repository https://gitbox.apache.org/repos/asf/solr.git
commit 963f1ea3864a4520c8aab39c26e5fd8e11096ffe Author: Chris Hostetter <[email protected]> AuthorDate: Fri Jan 6 16:44:23 2023 -0700 resolve obnoxious forbidden API --- .../impl/SendUpdatesToLeadersOverrideTest.java | 156 ++++++++++++--------- 1 file changed, 87 insertions(+), 69 deletions(-) diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/SendUpdatesToLeadersOverrideTest.java b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/SendUpdatesToLeadersOverrideTest.java index 9a485a483b3..8d4abab9042 100644 --- a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/SendUpdatesToLeadersOverrideTest.java +++ b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/SendUpdatesToLeadersOverrideTest.java @@ -41,6 +41,7 @@ import org.apache.solr.common.cloud.Replica; import org.apache.solr.request.SolrQueryRequest; import org.apache.solr.update.UpdateCommand; import org.apache.solr.update.processor.TrackingUpdateProcessorFactory; +import org.hamcrest.MatcherAssert; import org.junit.AfterClass; import org.junit.BeforeClass; import org.slf4j.Logger; @@ -193,7 +194,7 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { // post-distrib should never match any PULL replicas, regardless of request, if this fails // something is seriously wrong with our cluster - assertThat( + MatcherAssert.assertThat( "post-distrib should never be PULL replica", results.postDistribCores.keySet(), everyItem(not(isIn(PULL_REPLICA_CORE_NAMES)))); @@ -285,10 +286,10 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { assertUpdateWithRecording(new UpdateRequest().add(sdoc("id", "hoss")), client); // single NRT leader is only core that should be involved at all - assertThat("add pre-distrib size", add.preDistribCores.keySet(), hasSize(1)); - assertThat("add pre-distrib size", add.preDistribRequests.keySet(), hasSize(1)); - assertThat("add pre-distrib size", add.preDistribCommands, hasSize(1)); - assertThat( + MatcherAssert.assertThat("add pre-distrib size", add.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat("add pre-distrib size", add.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("add pre-distrib size", add.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat( "add pre-distrib must be leader", add.preDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); @@ -313,31 +314,32 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { "add and del should have been routed the same", add.preDistribCores.keySet(), del.preDistribCores.keySet()); - assertThat("del pre-distrib size", del.preDistribRequests.keySet(), hasSize(1)); - assertThat("del pre-distrib size", del.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat("del pre-distrib size", del.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("del pre-distrib size", del.preDistribCommands, hasSize(1)); } { // DBQ should start on some leader, and then distrib to both leaders final RecordingResults record = assertUpdateWithRecording(new UpdateRequest().deleteByQuery("*:*"), client); - assertThat("dbq pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("dbq pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "dbq pre-distrib must be leader", record.preDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); - assertThat("dbq pre-distrib size", record.preDistribRequests.keySet(), hasSize(1)); - assertThat("dbq pre-distrib size", record.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "dbq pre-distrib size", record.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("dbq pre-distrib size", record.preDistribCommands, hasSize(1)); assertEquals( "dbq post-distrib must be all leaders", LEADER_CORE_NAMES, record.postDistribCores.keySet()); - assertThat( + MatcherAssert.assertThat( "dbq post-distrib size", record.postDistribRequests.keySet(), hasSize(LEADER_CORE_NAMES.size())); - assertThat( + MatcherAssert.assertThat( "dbq post-distrib size", record.postDistribCommands, hasSize(LEADER_CORE_NAMES.size())); } @@ -351,15 +353,16 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { // NOTE: Don't assume our docIds are spread across multi-shards... // ...but the original number of requests should all be diff leaders - assertThat( + MatcherAssert.assertThat( "multi pre-distrib must be leaders", record.preDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); - assertThat( + MatcherAssert.assertThat( "multi pre-distrib req != pre-distrib num cores", record.preDistribRequests.keySet(), hasSize(record.preDistribCores.keySet().size())); - assertThat("multi pre-distrib command size", record.preDistribCommands, hasSize(100 + 10)); + MatcherAssert.assertThat( + "multi pre-distrib command size", record.preDistribCommands, hasSize(100 + 10)); assertEquals( "multi post-distrib must be same leaders", @@ -372,7 +375,8 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { "multi post-distrib cores don't match pre-distrib cores", record.preDistribCores.keySet(), record.postDistribCores.keySet()); - assertThat("multi post-distrib command size", record.postDistribCommands, hasSize(100 + 10)); + MatcherAssert.assertThat( + "multi post-distrib command size", record.postDistribCommands, hasSize(100 + 10)); } } @@ -391,65 +395,68 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { assertUpdateWithRecording(prefPull(new UpdateRequest().add(sdoc("id", "hoss"))), client); // ...should start on (some) PULL replica, since we asked nicely - assertThat("add pre-distrib size", add.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("add pre-distrib size", add.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "add pre-distrib must be PULL", add.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("add pre-distrib size", add.preDistribRequests.keySet(), hasSize(1)); - assertThat("add pre-distrib size", add.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat("add pre-distrib size", add.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("add pre-distrib size", add.preDistribCommands, hasSize(1)); // ...then be routed to single leader for this id - assertThat("add post-distrib size", add.postDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("add post-distrib size", add.postDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "add post-distrib must be leader", add.postDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); - assertThat("add post-distrib size", add.postDistribRequests.keySet(), hasSize(1)); - assertThat("add post-distrib size", add.postDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "add post-distrib size", add.postDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("add post-distrib size", add.postDistribCommands, hasSize(1)); // A DBI should also start on (some) PULL replica, since we asked nicely. // // then it should be distributed to whatever leader our add doc (for the same id) was sent to final RecordingResults del = assertUpdateWithRecording(prefPull(new UpdateRequest().deleteById("hoss")), client); - assertThat("del pre-distrib size", del.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("del pre-distrib size", del.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "del pre-distrib must be PULL", del.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("del pre-distrib size", del.preDistribRequests.keySet(), hasSize(1)); - assertThat("del pre-distrib size", del.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat("del pre-distrib size", del.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("del pre-distrib size", del.preDistribCommands, hasSize(1)); assertEquals( "add and del should have same post-distrib leader", add.postDistribCores.keySet(), del.postDistribCores.keySet()); - assertThat("del post-distrib size", del.postDistribRequests.keySet(), hasSize(1)); - assertThat("del post-distrib size", del.postDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "del post-distrib size", del.postDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("del post-distrib size", del.postDistribCommands, hasSize(1)); } { // DBQ start on (some) PULL replica, since we asked nicely, then be routed to all leaders final RecordingResults record = assertUpdateWithRecording(prefPull(new UpdateRequest().deleteByQuery("*:*")), client); - assertThat("dbq pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("dbq pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "dbq pre-distrib must be PULL", record.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("dbq pre-distrib size", record.preDistribRequests.keySet(), hasSize(1)); - assertThat("dbq pre-distrib size", record.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "dbq pre-distrib size", record.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("dbq pre-distrib size", record.preDistribCommands, hasSize(1)); assertEquals( "dbq post-distrib must be all leaders", LEADER_CORE_NAMES, record.postDistribCores.keySet()); - assertThat( + MatcherAssert.assertThat( "dbq post-distrib size", record.postDistribRequests.keySet(), hasSize(LEADER_CORE_NAMES.size())); - assertThat( + MatcherAssert.assertThat( "dbq post-distrib size", record.postDistribCommands, hasSize(LEADER_CORE_NAMES.size())); } @@ -460,13 +467,16 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { final RecordingResults record = assertUpdateWithRecording(prefPull(createMultiDirectUpdates(100, 10)), client); - assertThat("multi pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat( + "multi pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "multi pre-distrib must be PULL", record.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("multi pre-distrib req size", record.preDistribRequests.keySet(), hasSize(1)); - assertThat("multi pre-distrib command size", record.preDistribCommands, hasSize(100 + 10)); + MatcherAssert.assertThat( + "multi pre-distrib req size", record.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat( + "multi pre-distrib command size", record.preDistribCommands, hasSize(100 + 10)); assertEquals( "multi post-distrib must be all leaders", @@ -476,11 +486,12 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { // // We make no asertion about number of post-distrb requests // (distrib proc may batch differently then what we send) - assertThat( + MatcherAssert.assertThat( "multi post-distrib cores", record.postDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); - assertThat("multi post-distrib command size", record.postDistribCommands, hasSize(100 + 10)); + MatcherAssert.assertThat( + "multi post-distrib command size", record.postDistribCommands, hasSize(100 + 10)); } } @@ -497,22 +508,23 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { client); // ...should start on (some) PULL replica, since we asked nicely - assertThat("add pre-distrib size", add.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("add pre-distrib size", add.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "add pre-distrib must be PULL", add.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("add pre-distrib size", add.preDistribRequests.keySet(), hasSize(1)); - assertThat("add pre-distrib size", add.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat("add pre-distrib size", add.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("add pre-distrib size", add.preDistribCommands, hasSize(1)); // ...then be routed to single leader for this id - assertThat("add post-distrib size", add.postDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("add post-distrib size", add.postDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "add post-distrib must be leader", add.postDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); - assertThat("add post-distrib size", add.postDistribRequests.keySet(), hasSize(1)); - assertThat("add post-distrib size", add.postDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "add post-distrib size", add.postDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("add post-distrib size", add.postDistribCommands, hasSize(1)); // A DBI should also start on (some) PULL replica, since we asked nicely. // @@ -520,20 +532,21 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { final RecordingResults del = assertUpdateWithRecording( prefPull(new UpdateRequest().deleteById("hoss")).setSendToLeaders(false), client); - assertThat("del pre-distrib size", del.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("del pre-distrib size", del.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "del pre-distrib must be PULL", del.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("del pre-distrib size", del.preDistribRequests.keySet(), hasSize(1)); - assertThat("del pre-distrib size", del.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat("del pre-distrib size", del.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("del pre-distrib size", del.preDistribCommands, hasSize(1)); assertEquals( "add and del should have same post-distrib leader", add.postDistribCores.keySet(), del.postDistribCores.keySet()); - assertThat("del post-distrib size", del.postDistribRequests.keySet(), hasSize(1)); - assertThat("del post-distrib size", del.postDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "del post-distrib size", del.postDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("del post-distrib size", del.postDistribCommands, hasSize(1)); } { // DBQ start on (some) PULL replica, since we asked nicely, then be routed to all leaders @@ -541,23 +554,24 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { assertUpdateWithRecording( prefPull(new UpdateRequest().deleteByQuery("*:*")).setSendToLeaders(false), client); - assertThat("dbq pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat("dbq pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "dbq pre-distrib must be PULL", record.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("dbq pre-distrib size", record.preDistribRequests.keySet(), hasSize(1)); - assertThat("dbq pre-distrib size", record.preDistribCommands, hasSize(1)); + MatcherAssert.assertThat( + "dbq pre-distrib size", record.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat("dbq pre-distrib size", record.preDistribCommands, hasSize(1)); assertEquals( "dbq post-distrib must be all leaders", LEADER_CORE_NAMES, record.postDistribCores.keySet()); - assertThat( + MatcherAssert.assertThat( "dbq post-distrib size", record.postDistribRequests.keySet(), hasSize(LEADER_CORE_NAMES.size())); - assertThat( + MatcherAssert.assertThat( "dbq post-distrib size", record.postDistribCommands, hasSize(LEADER_CORE_NAMES.size())); } @@ -569,13 +583,16 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { assertUpdateWithRecording( prefPull(createMultiDirectUpdates(100, 10)).setSendToLeaders(false), client); - assertThat("multi pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); - assertThat( + MatcherAssert.assertThat( + "multi pre-distrib size", record.preDistribCores.keySet(), hasSize(1)); + MatcherAssert.assertThat( "multi pre-distrib must be PULL", record.preDistribCores.keySet(), everyItem(isIn(PULL_REPLICA_CORE_NAMES))); - assertThat("multi pre-distrib req size", record.preDistribRequests.keySet(), hasSize(1)); - assertThat("multi pre-distrib command size", record.preDistribCommands, hasSize(100 + 10)); + MatcherAssert.assertThat( + "multi pre-distrib req size", record.preDistribRequests.keySet(), hasSize(1)); + MatcherAssert.assertThat( + "multi pre-distrib command size", record.preDistribCommands, hasSize(100 + 10)); assertEquals( "multi post-distrib must be all leaders", @@ -585,11 +602,12 @@ public class SendUpdatesToLeadersOverrideTest extends SolrCloudTestCase { // // We make no asertion about number of post-distrb requests // (distrib proc may batch differently then what we send) - assertThat( + MatcherAssert.assertThat( "multi post-distrib cores", record.postDistribCores.keySet(), everyItem(isIn(LEADER_CORE_NAMES))); - assertThat("multi post-distrib command size", record.postDistribCommands, hasSize(100 + 10)); + MatcherAssert.assertThat( + "multi post-distrib command size", record.postDistribCommands, hasSize(100 + 10)); } }
