Jiri Daněk created DISPATCH-1603:
------------------------------------
Summary: [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
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.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]