Error connecting to irods for object ndc80gfp cdc11cfp_CFP.tif
Traceback (most recent call last):
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 86, in get_connection
conn = self.idle.pop()
^^^^^^^^^^^^^^^
KeyError: 'pop from an empty set'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/omero-quay/src/omero_quay/irods/data.py", line 212, in _exists
return super()._exists(isaobject)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/omero-quay/src/omero_quay/core/interface.py", line 582, in _exists
if localobject := self._find_by_id(isaobject):
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/omero-quay/src/omero_quay/irods/data.py", line 520, in _find_by_id
.all()
^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/query.py", line 227, in all
result_set = self.execute()
^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/query.py", line 200, in execute
with self.sess.pool.get_connection() as conn:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 18, in method_
ret = method(self, *s, **kw)
^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 109, in get_connection
conn = Connection(self, self.account)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 109, in __init__
auth_module.login(self, **self.auth_options)
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 24, in login
_authenticate_native(conn, req=opt)
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 40, in _authenticate_native
_native_ClientAuthState(conn, scheme=_scheme).authenticate_client(
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 189, in authenticate_client
resp = self.call(next_operation, to_send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 177, in call
resp = func(request)
^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 112, in native_auth_client_response
resp = _auth_api_request(self.conn, server_req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 149, in _auth_api_request
response = conn.recv()
^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 188, in recv
raise exc
irods.exception.SYS_LIBRARY_ERROR: None
CRITICAL irods.connection:connection.py:174 [Errno 104] Connection reset by peer
ERROR irods.connection:connection.py:175 Could not receive server response
ERROR omero_quay.iRODSData.man_e88f1a22:data.py:214 Error connecting to irods for object license.txt
Traceback (most recent call last):
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 86, in get_connection
conn = self.idle.pop()
^^^^^^^^^^^^^^^
KeyError: 'pop from an empty set'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 166, in recv
msg = iRODSMessage.recv(self.socket)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/message/__init__.py", line 346, in recv
rsp_header_size = _recv_message_in_len(sock, 4)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/message/__init__.py", line 225, in _recv_message_in_len
buf = sock.recv(size_left, socket.MSG_WAITALL)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ConnectionResetError: [Errno 104] Connection reset by peer
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/omero-quay/src/omero_quay/irods/data.py", line 212, in _exists
return super()._exists(isaobject)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/omero-quay/src/omero_quay/core/interface.py", line 582, in _exists
if localobject := self._find_by_id(isaobject):
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/omero-quay/src/omero_quay/irods/data.py", line 520, in _find_by_id
.all()
^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/query.py", line 227, in all
result_set = self.execute()
^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/query.py", line 200, in execute
with self.sess.pool.get_connection() as conn:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 18, in method_
ret = method(self, *s, **kw)
^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 109, in get_connection
conn = Connection(self, self.account)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 109, in __init__
auth_module.login(self, **self.auth_options)
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 24, in login
_authenticate_native(conn, req=opt)
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 40, in _authenticate_native
_native_ClientAuthState(conn, scheme=_scheme).authenticate_client(
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 189, in authenticate_client
resp = self.call(next_operation, to_send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 177, in call
resp = func(request)
^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 71, in native_auth_client_request
resp = _auth_api_request(self.conn, server_req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 149, in _auth_api_request
response = conn.recv()
^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 177, in recv
raise NetworkException("Could not receive server response")
irods.exception.NetworkException: Could not receive server response
CRITICAL irods.connection:connection.py:174 [Errno 104] Connection reset by peer
ERROR irods.connection:connection.py:175 Could not receive server response
ERROR omero_quay.iRODSData.man_e88f1a22:data.py:214 Error connecting to irods for object ndc80gfp cdc11cfp_GFP.tif
Traceback (most recent call last):
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 86, in get_connection
conn = self.idle.pop()
^^^^^^^^^^^^^^^
KeyError: 'pop from an empty set'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 166, in recv
msg = iRODSMessage.recv(self.socket)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/message/__init__.py", line 346, in recv
rsp_header_size = _recv_message_in_len(sock, 4)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/message/__init__.py", line 225, in _recv_message_in_len
buf = sock.recv(size_left, socket.MSG_WAITALL)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ConnectionResetError: [Errno 104] Connection reset by peer
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/omero-quay/src/omero_quay/irods/data.py", line 212, in _exists
return super()._exists(isaobject)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/omero-quay/src/omero_quay/core/interface.py", line 582, in _exists
if localobject := self._find_by_id(isaobject):
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/omero-quay/src/omero_quay/irods/data.py", line 520, in _find_by_id
.all()
^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/query.py", line 227, in all
result_set = self.execute()
^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/query.py", line 200, in execute
with self.sess.pool.get_connection() as conn:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 18, in method_
ret = method(self, *s, **kw)
^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/pool.py", line 109, in get_connection
conn = Connection(self, self.account)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 109, in __init__
auth_module.login(self, **self.auth_options)
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 24, in login
_authenticate_native(conn, req=opt)
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 40, in _authenticate_native
_native_ClientAuthState(conn, scheme=_scheme).authenticate_client(
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 189, in authenticate_client
resp = self.call(next_operation, to_send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/iroods/auth/__init__.py", line 177, in call
resp = func(request)
^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/native.py", line 71, in native_auth_client_request
resp = _auth_api_request(self.conn, server_req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/auth/__init__.py", line 149, in _auth_api_request
response = conn.recv()
^^^^^^^^^^^
File "/home/omero/.conda/envs/quay/lib/python3.12/site-packages/irods/connection.py", line 177, in recv
raise NetworkException("Could not receive server response")
irods.exception.NetworkException: Could not receive server response
...
Hello,
With the latest version of the client, I have connection issues due to the aboved mentioned bug:
The
try / exceptstatement here bugs ifpool.activeis also empty.I have trouble tracing the issue, but I have the impression that there is a circular call somewhere. I gather from looking at the code that it should be possible to access the module version without an authentication, but the authenticated method to get the code version from the
authmodule is called within theexceptstatement if the idle pool is empty, as shown in this traceback after a connection error:Details
I'm opening a PR with a proposed fix :)
Best,
Guillaume