__________________ TestTestgresCommon.test_child_pids[remote] __________________
[gw3] linux -- Python 3.12.7 /tmp/testgres_venv/bin/python3
self = <tests.test_testgres_common.TestTestgresCommon object at 0x7f70e193e5d0>
node_svc = <tests.helpers.global_data.PostgresNodeService object at 0x7f70e2992930>
def test_child_pids(self, node_svc: PostgresNodeService):
assert isinstance(node_svc, PostgresNodeService)
master_processes = [
ProcessType.AutovacuumLauncher,
ProcessType.BackgroundWriter,
ProcessType.Checkpointer,
ProcessType.StatsCollector,
ProcessType.WalSender,
ProcessType.WalWriter,
]
postgresVersion = get_pg_version2(node_svc.os_ops)
if __class__.helper__pg_version_ge(postgresVersion, '10'):
master_processes.append(ProcessType.LogicalReplicationLauncher)
if __class__.helper__pg_version_ge(postgresVersion, '14'):
master_processes.remove(ProcessType.StatsCollector)
repl_processes = [
ProcessType.Startup,
ProcessType.WalReceiver,
]
def LOCAL__test_auxiliary_pids(
node: PostgresNode,
expectedTypes: typing.List[ProcessType]
) -> typing.List[ProcessType]:
# returns list of the absence processes
assert node is not None
assert type(node) is PostgresNode
assert expectedTypes is not None
assert type(expectedTypes) is list
pids = node.auxiliary_pids
assert pids is not None
assert type(pids) is dict
result: typing.List[ProcessType] = list()
for ptype in expectedTypes:
if ptype not in pids:
result.append(ptype)
run_r = (1, '', '')
self = <testgres.operations.remote_ops.RemoteOperations object at 0x7f70e2538770>
shell = True
ssh_cmd = ['ssh',
'-i',
'/home/test/testgres/id_ed25519_test_ci',
'-p',
'22',
'test@machine2-altlinux_11-py3_xx_xx-pg17_xx',
'trap \'\' HUP;export LANG="C.UTF-8";ps -p 116327 -o cmd --no-headers']
stderr = None
stdin = None
stdout = None
text = False
timeout = None
verbose = False
wait_exit = False
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
cmd = ['ps', '-p', '116327', '-o', 'cmd', '--no-headers'], exit_code = 1
msg_arg = b'', error = '', out = ''
@staticmethod
def UtilityExitedWithNonZeroCode(cmd, exit_code, msg_arg, error, out) -> typing.NoReturn:
assert type(exit_code) is int
msg_arg_s = __class__._TranslateDataIntoString(msg_arg)
assert type(msg_arg_s) is str
msg_arg_s = msg_arg_s.strip()
if msg_arg_s == "":
msg_arg_s = "#no_error_message"
message = "Utility exited with non-zero code (" + str(exit_code) + "). Error: `" + msg_arg_s + "`"
> raise ExecUtilException(
message=message,
command=cmd,
exit_code=exit_code,
out=out,
error=error)
E testgres.operations.exceptions.ExecUtilException: Utility exited with non-zero code (1). Error: `#no_error_message`
E Command: ps -p 116327 -o cmd --no-headers
E Exit code: 1
__class__ = <class 'testgres.operations.raise_error.RaiseError'>
cmd = ['ps', '-p', '116327', '-o', 'cmd', '--no-headers']
error = ''
exit_code = 1
message = 'Utility exited with non-zero code (1). Error: `#no_error_message`'
msg_arg = b''
msg_arg_s = '#no_error_message'
out = ''
/tmp/testgres_venv/lib64/python3/site-packages/testgres/operations/raise_error.py:20: ExecUtilException
------------------------------ Captured log call -------------------------------
DEBUG root:port_manager__generic2.py:157 [port manager] Port 21650 is reserved.
DEBUG root:port_manager__generic2.py:157 [port manager] Port 26241 is reserved.
INFO root:test_testgres_common.py:1023 Test pids of [testgres-e41e539d-6ccb-4242-8458-632268f7ee31] node. Attempt #1.
INFO root:test_testgres_common.py:1035 Bingo!
INFO root:test_testgres_common.py:1023 Test pids of [testgres-0362ff36-a9c1-4db7-bf05-c120ea39447b] node. Attempt #1.
INFO root:test_testgres_common.py:1035 Bingo!
DEBUG root:port_manager__generic2.py:157 [port manager] Port 26241 is released.
DEBUG root:port_manager__generic2.py:157 [port manager] Port 21650 is released.
=============================== warnings summary ===============================
tests/test_testgres_remote.py::TestTestgresRemote::test_init__LANG_С
/tmp/testgres_venv/lib64/python3/site-packages/_pytest/fixtures.py:1313: PytestRemovedIn10Warning: Class-scoped fixture defined as instance method is deprecated.
Instance attributes set in this fixture will NOT be visible to test methods,
as each test gets a new instance while the fixture runs only once per class.
Use @classmethod decorator and set attributes on cls instead.
See https://docs.pytest.org/en/stable/deprecations.html#class-scoped-fixture-as-instance-method
fixturefunc = resolve_fixture_function(fixturedef, request)
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED tests/test_testgres_common.py::TestTestgresCommon::test_child_pids[remote] - testgres.operations.exceptions.ExecUtilException: Utility exited with non-zero code (1). Error: `#no_error_message`
Command: ps -p 116327 -o cmd --no-headers
Exit code: 1
====== 1 failed, 1292 passed, 3 skipped, 1 warning in 5455.59s (1:30:55) =======
https://github.com/postgrespro/testgres/actions/runs/29373027538/job/87226314560#step:10:5829
testgres--test_logs--20260714_231504-altlinux_11-py3_xx_xx-pg17_xx-id29373027538.zip