CI: beacon config.set_config_db_file fails
https://gitlab.esrf.fr/bliss/bliss/-/jobs/722501
ERROR at teardown of test_steps_per_unit_modified[steps_per_unit_sign_change_0_pos_with_offset_and_opposite_user_sign] _
robz = <bliss.common.axis.Axis object at 0x7fbc8a151760>
@pytest.fixture
def robz(robz):
sign = robz.sign
spu = robz.steps_per_unit
ll, hl = robz.dial_limits
backlash = robz.backlash
yield robz
# restore config sign and steps per unit
robz.config.set("steps_per_unit", spu)
robz.config.set("sign", sign)
robz.config.set("low_limit", ll)
robz.config.set("high_limit", hl)
robz.config.set("backlash", backlash)
> robz.config.save()
tests/motors/test_config_changes.py:27:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/common/motor_config.py:67: in save
self.config_dict.save()
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/static.py:548: in save
self.config.set_config_db_file(filename, file_content)
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/static.py:947: in set_config_db_file
client.set_config_db_file(full_filename, content, connection=self._connection)
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/client.py:50: in f
return func(*args, **keys)
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/client.py:212: in set_config_db_file
connection.set_config_db_file(filepath, content, timeout=timeout)
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/connection.py:31: in f
return func(self, *args, **keys)
/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/connection.py:426: in set_config_db_file
for rx_msg in wq.queue():
src/gevent/queue.py:412: in gevent._gevent_cqueue.Queue.__next__
???
src/gevent/queue.py:350: in gevent._gevent_cqueue.Queue.get
???
src/gevent/queue.py:327: in gevent._gevent_cqueue.Queue._Queue__get_or_peek
???
src/gevent/_waiter.py:154: in gevent._gevent_c_waiter.Waiter.get
???
src/gevent/_greenlet_primitives.py:61: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
???
src/gevent/_greenlet_primitives.py:61: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
???
src/gevent/_greenlet_primitives.py:65: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch
???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> ???
E RuntimeError: Can't set config file
src/gevent/_gevent_c_greenlet_primitives.pxd:35: RuntimeError
--------------------------- Captured stderr teardown ---------------------------
Traceback (most recent call last):
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/server.py", line 669, in _client_rx
_write_config_db_file(c_id, message)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/server.py", line 557, in _write_config_db_file
client_id.sendall(msg)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 702, in sendall
return _sendall(self, data_memory, flags)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 391, in _sendall
timeleft = __send_chunk(socket, chunk, flags, timeleft, end)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 320, in __send_chunk
data_sent += socket.send(chunk, flags)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 725, in send
return self._sock.send(data, flags)
BrokenPipeError: [Errno 32] Broken pipe
ERROR 2023-07-27 15:25:37,339 beacon: Error with client id <gevent._socket3.socket at 0x7fd062b5d3a0 object, fd=37, family=1, type=1, proto=0>, close it
Traceback (most recent call last):
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/server.py", line 669, in _client_rx
_write_config_db_file(c_id, message)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/bliss/config/conductor/server.py", line 557, in _write_config_db_file
client_id.sendall(msg)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 702, in sendall
return _sendall(self, data_memory, flags)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 391, in _sendall
timeleft = __send_chunk(socket, chunk, flags, timeleft, end)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 320, in __send_chunk
data_sent += socket.send(chunk, flags)
File "/opt/conda/envs/default_env/lib/python3.9/site-packages/gevent/_socketcommon.py", line 725, in send
return self._sock.send(data, flags)
BrokenPipeError: [Errno 32] Broken pipe
Edited by Wout De Nolf