[ 
https://issues.apache.org/jira/browse/CASSANDRA-18499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17744641#comment-17744641
 ] 

Michael Semb Wever commented on CASSANDRA-18499:
------------------------------------------------

No tests were removed.  Only the upgrade paths filtered down to supported paths.

At minimum you've highlighted that the multi-step upgrades can be done for all 
steps that use the end version's jdk.  (The supported upgrade paths only apply 
to each step, and the cluster is fully upgraded before starting the next 
upgrade step.)

We dropped support for the JAVAN_HOME properties, and for switching jdks during 
a test run.  Re-introducing that deserves a separate ticket.  It's use is 
(very) limited, and it was causing headache in a number of places when trying 
to introduce jdk17.  I suspect it's not "a feature" of CCM that anyone needs, 
as we don't recommend users change jdk at upgrade time.

> Test Failure: 
> upgrade_through_versions_test.py::TestUpgrade::test_rolling_upgrade_with_internode_ssl
> ----------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-18499
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18499
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Test/dtest/python
>            Reporter: Andres de la Peña
>            Assignee: Michael Semb Wever
>            Priority: Normal
>             Fix For: 5.x
>
>
> The upgrade Python dtest 
> {{upgrade_through_versions_test.py::TestUpgrade::test_rolling_upgrade_with_internode_ssl}}
>  seems to fail on CircleCI at least for trunk:
>  * 
> [https://app.circleci.com/pipelines/github/adelapena/cassandra/2882/workflows/b9abc2b2-2e79-47b2-b7ce-c549e75293bc/jobs/42698/tests]
> {code:java}
> self = 
> <upgrade_tests.upgrade_through_versions_test.TestProtoV3Upgrade_AllVersions_EndsAt_Trunk_HEAD
>  object at 0x7f89fc0f17f0>
>     @pytest.mark.timeout(3000)
>     def test_rolling_upgrade_with_internode_ssl(self):
>         """
>         Rolling upgrade test using internode ssl.
>         """
> >       self.upgrade_scenario(rolling=True, internode_ssl=True)
> upgrade_tests/upgrade_through_versions_test.py:371: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> self = 
> <upgrade_tests.upgrade_through_versions_test.TestProtoV3Upgrade_AllVersions_EndsAt_Trunk_HEAD
>  object at 0x7f89fc0f17f0>
> populate = True, create_schema = True, rolling = True, after_upgrade_call = ()
> internode_ssl = True
>     def upgrade_scenario(self, populate=True, create_schema=True, 
> rolling=False, after_upgrade_call=(), internode_ssl=False):
>         # Record the rows we write as we go:
>         if populate:
>             self.prepare()
>         self.row_values = set()
>         cluster = self.cluster
>         if cluster.version() >= '3.0':
>             
> cluster.set_configuration_options({'enable_user_defined_functions': 'true',
>                                                
> 'enable_scripted_user_defined_functions': 'true'})
>         elif cluster.version() >= '2.2':
>             
> cluster.set_configuration_options({'enable_user_defined_functions': 'true'})
>     
>         if internode_ssl:
>             logger.debug("***using internode ssl***")
>             generate_ssl_stores(self.fixture_dtest_setup.test_path)
>             
> self.cluster.enable_internode_ssl(self.fixture_dtest_setup.test_path)
>     
>         if populate:
>             # Start with 3 node cluster
>             logger.debug('Creating cluster (%s)' % 
> self.test_version_metas[0].version)
>             cluster.populate(3)
>             [node.start(use_jna=True, wait_for_binary_proto=True) for node in 
> cluster.nodelist()]
>         else:
>             logger.debug("Skipping cluster creation (should already be 
> built)")
>     
>         # add nodes to self for convenience
>         for i, node in enumerate(cluster.nodelist(), 1):
>             node_name = 'node' + str(i)
>             setattr(self, node_name, node)
>     
>         if create_schema:
>             if rolling:
>                 self._create_schema_for_rolling()
>             else:
>                 self._create_schema()
>         else:
>             logger.debug("Skipping schema creation (should already be built)")
>     
>         self._log_current_ver(self.test_version_metas[0])
>     
>         if rolling:
>             # start up processes to write and verify data
>             write_proc, verify_proc, verification_queue = 
> self._start_continuous_write_and_verify(wait_for_rowcount=5000)
>     
>             # upgrade through versions
>             for version_meta in self.test_version_metas[1:]:
>                 if version_meta.family > '3.11' and internode_ssl:
>                     seeds =[]
>                     for seed in cluster.seeds:
> >                       seeds.append(seed.ip_addr + ':7001')
> E                       AttributeError: 'str' object has no attribute 
> 'ip_addr'
> upgrade_tests/upgrade_through_versions_test.py:422: AttributeError
> {code}
> I haven't seen this failure on Jenkins yet.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to