Skip to content

Client crashes when connection to remote times out #66

@peshence

Description

@peshence

What happened?

Actual results:

Panic and crash

Expected result

Possibly a message that connection timed out and return control to calling function?

What are the steps to reproduce the bug?

Running a retreive request with pyfdb trying to connect to a remote FDB which e.g. is behind a firewall, so connections hang and eventually timeout.

Version

5.13.106

Platform (OS and architecture)

python:3.11-slim-bookworm

Relevant log output

PANIC: ::pthread_mutex_unlock(&mutex_) in  (/source/eckit/src/eckit/thread/Mutex.cc:66 unlock)
----------------------------------------
BACKTRACE
----------------------------------------
Exception: Timeout expired: 5 (connect)
PANIC: ::pthread_mutex_unlock(&mutex_) in  (/source/eckit/src/eckit/thread/Mutex.cc:66 unlock)
backtrace [2] stack has 29 addresses
(/opt/fdb/lib/../lib/libeckit.so+eckit::BackTrace::dump[abi:cxx11]())0x194 
(/opt/fdb/lib/../lib/libeckit.so+eckit::handle_panic(char const*))0x12e 
(/opt/fdb/lib/../lib/libeckit.so+eckit::handle_panic(char const*, eckit::CodeLocation const&))0x211 
(/opt/fdb/lib/../lib/libeckit.so+eckit::Mutex::unlock())0x57 
(/opt/fdb/lib/libfdb5.so+)0xd5351 
(/opt/fdb/lib/libfdb5.so+fdb5::FDB::FDB(fdb5::Config const&))0x2f 
(/opt/fdb/lib/libfdb5.so+fdb_new_handle)0x7f 
(/home/polytope/.local/lib/python3.11/site-packages/_cffi_backend.cpython-311-x86_64-linux-gnu.so+)0x25052 
(/home/polytope/.local/lib/python3.11/site-packages/_cffi_backend.cpython-311-x86_64-linux-gnu.so+)0x235dc 
(/home/polytope/.local/lib/python3.11/site-packages/_cffi_backend.cpython-311-x86_64-linux-gnu.so+)0x2162f 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyObject_Call)0x71 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyEval_EvalFrameDefault)0x449e 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1b9c7a 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyObject_FastCallDictTstate)0x9b 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1e0f52 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1b5213 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyObject_MakeTpCall)0x6f 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyEval_EvalFrameDefault)0x66d 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1b9c7a 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1f2f36 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyEval_EvalFrameDefault)0x449e 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1b9c7a 
(/usr/local/bin/../lib/libpython3.11.so.1.0+_PyEval_EvalFrameDefault)0x449e 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1b9c7a 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x1f3060 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x2a0c74 
(/usr/local/bin/../lib/libpython3.11.so.1.0+)0x26faf4 
(/lib/x86_64-linux-gnu/libc.so.6+)0x891c4 
(/lib/x86_64-linux-gnu/libc.so.6+)0x10985c 

end of backtrace dump ...
----------------------------------------

Accompanying data

No response

Organisation

ECMWF

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions