You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Justin Ross (JIRA)" <ji...@apache.org> on 2018/05/02 22:17:00 UTC
[jira] [Updated] (PROTON-1838) [python] proton.float32('inf') and
proton.float32('-inf') fail during encoding on CentOS 7
[ https://issues.apache.org/jira/browse/PROTON-1838?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Justin Ross updated PROTON-1838:
--------------------------------
Summary: [python] proton.float32('inf') and proton.float32('-inf') fail during encoding on CentOS 7 (was: [Python binding] proton.float32('inf') and proton.float32('-inf') fail during encoding on CentOS 7)
> [python] proton.float32('inf') and proton.float32('-inf') fail during encoding on CentOS 7
> ------------------------------------------------------------------------------------------
>
> Key: PROTON-1838
> URL: https://issues.apache.org/jira/browse/PROTON-1838
> Project: Qpid Proton
> Issue Type: Bug
> Components: python-binding
> Reporter: Kim van der Riet
> Priority: Major
> Labels: codec
> Fix For: proton-c-future
>
> Attachments: simple_send.py
>
>
> Using the special float values {{'inf'}} and {{'-inf'}} in a {{proton.float32}} message body on CentOS 7 (both Python 2 and 3) result in the following error:
> {noformat}
> [kvdr@rhm-x3550-05 ~]$ cat /etc/redhat-release
> CentOS Linux release 7.4.1708 (Core)
> [kvdr@rhm-x3550-05 ~]$ python --version
> Python 2.7.5
> [kvdr@rhm-x3550-05 ~]$ python3 --version
> Python 3.4.5
> [kvdr@rhm-x3550-05 ~]$ python simple_send.py -a localhost:8001/qit.examples
> Traceback (most recent call last):
> File "simple_send.py", line 62, in <module>
> Container(Send(opts.address, opts.messages)).run()
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/reactor.py", line 148, in run
> while self.process(): pass
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/reactor.py", line 174, in process
> self._check_errors()
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/reactor.py", line 170, in _check_errors
> _compat.raise_(exc, value, tb)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 3478, in dispatch
> ev.dispatch(self.handler)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 3390, in dispatch
> self.dispatch(h, type)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 3387, in dispatch
> result = dispatch(handler, type.method, self)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 3265, in dispatch
> return m(*args)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/handlers.py", line 41, in on_link_flow
> self.on_sendable(event)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/handlers.py", line 63, in on_sendable
> dispatch(self.delegate, 'on_sendable', event)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 3265, in dispatch
> return m(*args)
> File "simple_send.py", line 41, in on_sendable
> event.sender.send(msg)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 2437, in send
> return obj.send(self, tag=tag)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 540, in send
> encoded = self.encode()
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 523, in encode
> self._pre_encode()
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 267, in _pre_encode
> body.put_object(self.body)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 1698, in put_object
> putter(self, obj)
> File "/var/lib/jenkins/workspace/install/lib64/proton/bindings/python/proton/__init__.py", line 1209, in put_float
> self._check(pn_data_put_float(self._data, f))
> OverflowError: in method 'pn_data_put_float', argument 2 of type 'float'{noformat}
> and which can be observed by running the attached reproducer based on the simple_send.py example. The use of float special value {{'NaN'}} does not produce this error, however.
> This error does not occur on Fedora 27.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org