vvcephei commented on a change in pull request #11129:
URL: https://github.com/apache/kafka/pull/11129#discussion_r678481215



##########
File path: 
streams/src/test/java/org/apache/kafka/streams/integration/StoreQueryIntegrationTest.java
##########
@@ -152,11 +150,17 @@ public void 
shouldQueryOnlyActivePartitionStoresByDefault() throws Exception {
                 }
                 return true;
             } catch (final InvalidStateStoreException exception) {
-                assertThat(
-                    exception.getMessage(),
-                    containsString("Cannot get state store source-table 
because the stream thread is PARTITIONS_ASSIGNED, not RUNNING")
-                );
-                LOG.info("Streams wasn't running. Will try again.");
+                final String message = exception.getMessage();
+                final boolean exceptionNotRunning = message.startsWith("Cannot 
get state store source-table because the stream thread is PARTITIONS_ASSIGNED, 
not RUNNING");
+                if (exceptionNotRunning) {
+                    LOG.info("Streams wasn't running. Will try again.");
+                }
+                final boolean exceptionRebalanced = message.startsWith("The 
state store, source-table, may have migrated to another instance");
+                if (exceptionRebalanced) {
+                    LOG.info("Rebalancing happened. Will try again.");
+                }
+                final boolean expectedException = exceptionNotRunning || 
exceptionRebalanced;
+                assertThat(expectedException, is(true));

Review comment:
       It can sometimes be hard to get the logs for failing tests, so it might 
be nice to get the failure reason in the actual test output. Check out 
`Matchers`: there should be a way to compose the checks you're doing here 
manually. It'll be something like:
   
   ```
   assertThat(
     message, 
     is(
       oneOf(
         containsString("Cannot get state store source-table because the stream 
thread is PARTITIONS_ASSIGNED, not RUNNING"),
         containsString("The state store, source-table, may have migrated to 
another instance")
       )
   )
   ```




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to