test_rolling_upgrade | Failure | RuntimeError: A subprocess has terminated early. Subprocess statuses: data_writer (is_alive: True, exitCode: None), data_checker (is_alive: False, exitCode: 1), attempting to terminate remaining subprocesses now.
self = <upgrade_tests.upgrade_through_versions_test.TestUpgrade_indev_4_0_x_To_indev_5_0_x object at 0x7fd6f34712b0>
@pytest.mark.timeout(3000)
def test_rolling_upgrade(self):
"""
Test rolling upgrade of the cluster, so we have mixed versions part way through.
"""
> self.upgrade_scenario(rolling=True)
upgrade_tests/upgrade_through_versions_test.py:395:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
upgrade_tests/upgrade_through_versions_test.py:471: in upgrade_scenario
self._check_on_subprocs(self.fixture_dtest_setup.subprocs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <upgrade_tests.upgrade_through_versions_test.TestUpgrade_indev_4_0_x_To_indev_5_0_x object at 0x7fd6f34712b0>
subprocs = [<Process name='data_writer' pid=1731 parent=462 stopped exitcode=-SIGKILL daemon>, <Process name='data_checker' pid=1794 parent=462 stopped exitcode=1 daemon>]
def _check_on_subprocs(self, subprocs):
"""
Check on given subprocesses.
If any are not alive, we'll go ahead and terminate any remaining alive subprocesses since this test is going to fail.
"""
subproc_statuses = [s.is_alive() for s in subprocs]
if not all(subproc_statuses):
message = "A subprocess has terminated early. Subprocess statuses: "
for s in subprocs:
message += "{name} (is_alive: {aliveness}, exitCode: {exitCode}), ".format(name=s.name, aliveness=s.is_alive(), exitCode=s.exitcode)
message += "attempting to terminate remaining subprocesses now."
self._terminate_subprocs()
> raise RuntimeError(message)
E RuntimeError: A subprocess has terminated early. Subprocess statuses: data_writer (is_alive: True, exitCode: None), data_checker (is_alive: False, exitCode: 1), attempting to terminate remaining subprocesses now.
upgrade_tests/upgrade_through_versions_test.py:532: RuntimeError | 342.800 |