aio-libs/aiozmq

Bug: TimeoutError in default error_table in aiozmq.rpc not handled

Opened this issue · 0 comments

asyncio.TimeoutError's __module__ property is "concurrent.futures._base" instead of "asyncio" because asyncio imports the TimeoutError exception class from concurrent.futures.

Since the current RPC server is using __module__ property, as shown in process_call_result(), while the client-side default error table is constructed using manual module name composition in utils.py ("asyncio." + name), TimeoutError from server-side codes is not handled as intended.

So, _fill_error_table() in utils.py should be fixed to use the same mechanism to generate the key strings.