You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by GitBox <gi...@apache.org> on 2022/12/19 19:30:20 UTC

[GitHub] [kafka] lucasbru commented on a diff in pull request #12801: KAFKA-14343: Upgrade tests for state updater

lucasbru commented on code in PR #12801:
URL: https://github.com/apache/kafka/pull/12801#discussion_r1052560860


##########
tests/kafkatest/tests/streams/streams_upgrade_test.py:
##########
@@ -293,7 +262,62 @@ def test_version_probing_upgrade(self):
             current_generation = self.do_rolling_bounce(p, counter, current_generation)
             counter = counter + 1
 
-        # shutdown
+        self.stop_and_await()
+
+    @cluster(num_nodes=6)
+    @matrix(from_version=[str(LATEST_3_2), str(DEV_VERSION)], to_version=[str(DEV_VERSION)], upgrade=[True, False])
+    def test_upgrade_downgrade_state_updater(self, from_version, to_version, upgrade):
+        """
+        Starts 3 KafkaStreams instances, and enables / disables state restoration
+        for the instances in a rolling bounce.
+
+        Once same-thread state restoration is removed from the code, this test
+        should use different versions of the code.
+        """
+        if upgrade:
+            extra_properties_first = { '__state.updater.enabled__': 'false' }
+            first_version = from_version
+            extra_properties_second = { '__state.updater.enabled__': 'true' }
+            second_version = to_version
+        else:
+            extra_properties_first = { '__state.updater.enabled__': 'true' }
+            first_version = to_version
+            extra_properties_second = { '__state.updater.enabled__': 'false' }
+            second_version = from_version
+
+        self.set_up_services()
+
+        self.driver.start()
+        self.start_all_nodes_with(first_version, extra_properties_first)
+
+        counter = 1
+        random.seed()
+
+        # rolling bounce
+        random.shuffle(self.processors)
+        for p in self.processors:
+            p.CLEAN_NODE_ENABLED = False

Review Comment:
   good idea



-- 
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-unsubscribe@kafka.apache.org

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