[
https://issues.apache.org/jira/browse/PROTON-2776?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ievgen Popovych updated PROTON-2776:
------------------------------------
Labels: pull-request-available (was: )
> 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
> Priority: Major
> Labels: pull-request-available
>
> 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: [email protected]
For additional commands, e-mail: [email protected]