Ievgen Popovych created PROTON-2776:
---------------------------------------

             Summary: Exception in IOHandler.on_selectable_expired/update after 
wakeup from sleep
                 Key: PROTON-2776
                 URL: https://issues.apache.org/jira/browse/PROTON-2776
             Project: Qpid Proton
          Issue Type: Bug
          Components: python-binding
         Environment: Fedora GNU/Linux, python binding 0.38.0
            Reporter: Ievgen Popovych


This occasionally happens after my laptop wakes up from overnight sleep.

IOHandler.on_selectable_expired() is invoked with selectable that has
_terminated=True and _transport=None so when IOHandler.update()
is called it crashes when trying to handle the exception
(since transport is None):

{noformat}

Traceback (most recent call last):
File "/path/.venv/lib/python3.7/site-packages/proton/_handlers.py", line 1293, 
in update
capacity = transport.capacity()
AttributeError: 'NoneType' object has no attribute 'capacity'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/path/my-project.py", line 285, in run
self.container.run()
File "/path/.venv/lib/python3.7/site-packages/proton/_reactor.py", line 197, in 
run
while self.process():
File "/path/.venv/lib/python3.7/site-packages/proton/_reactor.py", line 262, in 
process
event.dispatch(self._global_handler)
File "/path/.venv/lib/python3.7/site-packages/proton/_events.py", line 158, in 
dispatch
_dispatch(handler, type.method, self)
File "/path/.venv/lib/python3.7/site-packages/proton/_events.py", line 131, in 
_dispatch
handler.on_unhandled(method, *args)
File "/path/.venv/lib/python3.7/site-packages/proton/_reactor.py", line 905, in 
on_unhandled
event.dispatch(self.base)
File "/path/.venv/lib/python3.7/site-packages/proton/_events.py", line 158, in 
dispatch
_dispatch(handler, type.method, self)
File "/path/.venv/lib/python3.7/site-packages/proton/_events.py", line 129, in 
_dispatch
m(*args)
File "/path/.venv/lib/python3.7/site-packages/proton/_handlers.py", line 1237, 
in on_selectable_expired
self.update(t, s, r.now)
File "/path/.venv/lib/python3.7/site-packages/proton/_handlers.py", line 1296, 
in update
if transport.closed:
AttributeError: 'NoneType' object has no attribute 'closed'
{noformat}

I have proposed a fix at https://github.com/apache/qpid-proton/pull/364.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to