You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Jiri Daněk (Jira)" <ji...@apache.org> on 2020/03/14 12:40:00 UTC
[jira] [Updated] (DISPATCH-1603) [macOS] Failure in
system_tests_multicast.MulticastLinearTest#test_01_presettled_large_msg_rx_detach
[ https://issues.apache.org/jira/browse/DISPATCH-1603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jiri Daněk updated DISPATCH-1603:
---------------------------------
Description:
Travis CI https://travis-ci.org/github/apache/qpid-dispatch/jobs/662307196
{noformat}
59: ======================================================================
59: ERROR: test_01_presettled_large_msg_rx_detach (system_tests_multicast.MulticastLinearTest)
59: ----------------------------------------------------------------------
59: Traceback (most recent call last):
59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 241, in test_01_presettled_large_msg_rx_detach
59: self._presettled_large_msg_rx_detach(self.config, 10, ['R-INT_A-2', 'R-INT_B-1'])
59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 236, in _presettled_large_msg_rx_detach
59: test.run()
59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 628, in run
59: Container(self).run()
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_reactor.py", line 180, in run
59: while self.process(): pass
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_reactor.py", line 237, in process
59: event.dispatch(handler)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 165, in dispatch
59: self.dispatch(h, type)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 165, in dispatch
59: self.dispatch(h, type)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 162, in dispatch
59: _dispatch(handler, type.method, self)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 123, in _dispatch
59: m(*args)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_handlers.py", line 253, in on_delivery
59: event.message = recv_msg(dlv)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_handlers.py", line 140, in recv_msg
59: msg.decode(delivery.link.recv(delivery.pending))
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_message.py", line 488, in decode
59: self._check(pn_message_decode(self._msg, data))
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_message.py", line 87, in _check
59: raise exc("[%s]: %s" % (err, pn_error_text(pn_message_error(self._msg))))
59: proton._exceptions.MessageException: [-4]: data error: not enough data to decode
{noformat}
Expected payload in the test is defined like this (from {{system_tests_multicast}})
{noformat}
MAX_FRAME=1023
LINK_CAPACITY=250
W_THREADS=2
LARGE_PAYLOAD = ("X" * MAX_FRAME) * 19
[...]
def _presettled_large_msg_rx_detach(self, config, count, drop_clients):
# detach receivers during receive
body = " MCAST PRESETTLED LARGE RX DETACH " + LARGE_PAYLOAD
{noformat}
That means {{len(LARGE_PAYLOAD) == 19437}}. What gets decoded in {{qpid-proton/python/proton/_message.py}} is smaller, {{len(data) == 16384}}.
It happens that {{2**14 == 16384}}. That might be a clue?
If I make LARGE_PAYLOAD smaller, {{LARGE_PAYLOAD = ("X" * MAX_FRAME) * 13}} the test starts passing. All the other tests in the class then start passing too.
was:
Travis CI https://travis-ci.org/github/apache/qpid-dispatch/jobs/662307196
{noformat}
59: ======================================================================
59: ERROR: test_01_presettled_large_msg_rx_detach (system_tests_multicast.MulticastLinearTest)
59: ----------------------------------------------------------------------
59: Traceback (most recent call last):
59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 241, in test_01_presettled_large_msg_rx_detach
59: self._presettled_large_msg_rx_detach(self.config, 10, ['R-INT_A-2', 'R-INT_B-1'])
59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 236, in _presettled_large_msg_rx_detach
59: test.run()
59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 628, in run
59: Container(self).run()
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_reactor.py", line 180, in run
59: while self.process(): pass
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_reactor.py", line 237, in process
59: event.dispatch(handler)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 165, in dispatch
59: self.dispatch(h, type)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 165, in dispatch
59: self.dispatch(h, type)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 162, in dispatch
59: _dispatch(handler, type.method, self)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 123, in _dispatch
59: m(*args)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_handlers.py", line 253, in on_delivery
59: event.message = recv_msg(dlv)
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_handlers.py", line 140, in recv_msg
59: msg.decode(delivery.link.recv(delivery.pending))
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_message.py", line 488, in decode
59: self._check(pn_message_decode(self._msg, data))
59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_message.py", line 87, in _check
59: raise exc("[%s]: %s" % (err, pn_error_text(pn_message_error(self._msg))))
59: proton._exceptions.MessageException: [-4]: data error: not enough data to decode
{noformat}
Expected payload is (from {{system_tests_multicast}})
{noformat}
MAX_FRAME=1023
LINK_CAPACITY=250
W_THREADS=2
LARGE_PAYLOAD = ("X" * MAX_FRAME) * 19
[...]
def _presettled_large_msg_rx_detach(self, config, count, drop_clients):
# detach receivers during receive
body = " MCAST PRESETTLED LARGE RX DETACH " + LARGE_PAYLOAD
{noformat}
That means {{len(LARGE_PAYLOAD) == 19437}}. What gets decoded in {{qpid-proton/python/proton/_message.py}} is smaller, {{len(data) == 16384}}.
It happens that {{2**14 == 16384}}. That might be a clue?
If I make LARGE_PAYLOAD smaller, {{LARGE_PAYLOAD = ("X" * MAX_FRAME) * 13}} the test starts passing. All the other tests in the class then start passing too.
> [macOS] Failure in system_tests_multicast.MulticastLinearTest#test_01_presettled_large_msg_rx_detach
> ----------------------------------------------------------------------------------------------------
>
> Key: DISPATCH-1603
> URL: https://issues.apache.org/jira/browse/DISPATCH-1603
> Project: Qpid Dispatch
> Issue Type: Bug
> Affects Versions: 1.10.0
> Environment: macOS 14.10 Sierra, Python 3.7
> Reporter: Jiri Daněk
> Priority: Major
> Labels: macOS
>
> Travis CI https://travis-ci.org/github/apache/qpid-dispatch/jobs/662307196
> {noformat}
> 59: ======================================================================
> 59: ERROR: test_01_presettled_large_msg_rx_detach (system_tests_multicast.MulticastLinearTest)
> 59: ----------------------------------------------------------------------
> 59: Traceback (most recent call last):
> 59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 241, in test_01_presettled_large_msg_rx_detach
> 59: self._presettled_large_msg_rx_detach(self.config, 10, ['R-INT_A-2', 'R-INT_B-1'])
> 59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 236, in _presettled_large_msg_rx_detach
> 59: test.run()
> 59: File "/Users/travis/build/apache/qpid-dispatch/tests/system_tests_multicast.py", line 628, in run
> 59: Container(self).run()
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_reactor.py", line 180, in run
> 59: while self.process(): pass
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_reactor.py", line 237, in process
> 59: event.dispatch(handler)
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 165, in dispatch
> 59: self.dispatch(h, type)
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 165, in dispatch
> 59: self.dispatch(h, type)
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 162, in dispatch
> 59: _dispatch(handler, type.method, self)
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_events.py", line 123, in _dispatch
> 59: m(*args)
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_handlers.py", line 253, in on_delivery
> 59: event.message = recv_msg(dlv)
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_handlers.py", line 140, in recv_msg
> 59: msg.decode(delivery.link.recv(delivery.pending))
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_message.py", line 488, in decode
> 59: self._check(pn_message_decode(self._msg, data))
> 59: File "/Users/travis/build/apache/qpid-dispatch/qpid-proton/python/proton/_message.py", line 87, in _check
> 59: raise exc("[%s]: %s" % (err, pn_error_text(pn_message_error(self._msg))))
> 59: proton._exceptions.MessageException: [-4]: data error: not enough data to decode
> {noformat}
> Expected payload in the test is defined like this (from {{system_tests_multicast}})
> {noformat}
> MAX_FRAME=1023
> LINK_CAPACITY=250
> W_THREADS=2
> LARGE_PAYLOAD = ("X" * MAX_FRAME) * 19
> [...]
> def _presettled_large_msg_rx_detach(self, config, count, drop_clients):
> # detach receivers during receive
> body = " MCAST PRESETTLED LARGE RX DETACH " + LARGE_PAYLOAD
> {noformat}
> That means {{len(LARGE_PAYLOAD) == 19437}}. What gets decoded in {{qpid-proton/python/proton/_message.py}} is smaller, {{len(data) == 16384}}.
> It happens that {{2**14 == 16384}}. That might be a clue?
> If I make LARGE_PAYLOAD smaller, {{LARGE_PAYLOAD = ("X" * MAX_FRAME) * 13}} the test starts passing. All the other tests in the class then start passing too.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org