qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robbie Gemmell (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PROTON-1465) amqp:decode-error Could not process AMQP commands
Date Wed, 19 Apr 2017 15:32:42 GMT

    [ https://issues.apache.org/jira/browse/PROTON-1465?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15974918#comment-15974918
] 

Robbie Gemmell commented on PROTON-1465:
----------------------------------------

Whatever is going on the broker is explicitly closing the AMQP connection, with the client
processing a connection Close frame it has received from the broker containing an error, so
you probably want to see if you can get more logging information from the broker, or perhaps
capture the issue occurring with Wireshark and see if anything looks wrong there.

> amqp:decode-error Could not process AMQP commands
> -------------------------------------------------
>
>                 Key: PROTON-1465
>                 URL: https://issues.apache.org/jira/browse/PROTON-1465
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: python-binding
>    Affects Versions: 0.17.0
>         Environment: Ubuntu 14.04
>            Reporter: Nico Maas
>
> I use Qpid in Python to send files and do it this way:
> {code}
> from __future__ import print_function, unicode_literals
> # qpid-proton
> from proton import Message
> from proton.utils import BlockingConnection
> from proton.handlers import IncomingMessageHandler
> activemq_channel = ""
> activemq_connection = ""
> activemq_session = ""
> activemq_sender = ""
> def mq_connect(ip, username, password):
>   global activemq_channel
>   global activemq_connection
>   global activemq_session
>   global activemq_sender
>   activemq_connection = BlockingConnection(username + ":" + password + "@" + ip + ":5672")
>   activemq_sender = activemq_connection.create_sender("file")
> def mq_send(data):
>   global activemq_sender
>   #activemq_sender.send(Message(bytearray(data)))
>   activemq_sender.send(Message(durable=True,body=data))
> def mq_close():
>   global activemq_connection
>   activemq_connection.close()
> mq_connect(server_ip,'admin','admin')
> for i in file_list:
>   data = open(i, 'rb')
>   mq_send(data.read())
>   data.close()
> mq_close.close()
> {code}
> Sadly I could not send the files as bytearrays as I normally do.. but it should work
(Is there any better way to send binary files via proton?). However, on random, following
problem arises:
> {code}
> Traceback (most recent call last):
>   File "./send_activemq.py", line 323, in <module>
>     mq_send(data.read())
>   File "./send_activemq.py", line 271, in mq_send
>     activemq_sender.send(Message(body=data))
>   File "/usr/local/lib/python2.7/dist-packages/proton/utils.py", line 78, in send
>     self.connection.wait(lambda: _is_settled(delivery), msg="Sending on sender %s" %
self.link.name, timeout=timeout)
>   File "/usr/local/lib/python2.7/dist-packages/proton/utils.py", line 267, in wait
>     self.container.process()
>   File "/usr/local/lib/python2.7/dist-packages/proton/reactor.py", line 159, in process
>     self._check_errors()
>   File "/usr/local/lib/python2.7/dist-packages/proton/reactor.py", line 155, in _check_errors
>     _compat.raise_(exc, value, tb)
>   File "/usr/local/lib/python2.7/dist-packages/proton/__init__.py", line 4050, in dispatch
>     ev.dispatch(self.handler)
>   File "/usr/local/lib/python2.7/dist-packages/proton/__init__.py", line 3959, in dispatch
>     result = dispatch(handler, type.method, self)
>   File "/usr/local/lib/python2.7/dist-packages/proton/__init__.py", line 3837, in dispatch
>     return m(*args)
>   File "/usr/local/lib/python2.7/dist-packages/proton/utils.py", line 289, in on_connection_remote_close
>     raise ConnectionClosed(event.connection)
> proton.utils.ConnectionClosed: Connection x closed due to: Condition('amqp:decode-error',
'Could not process AMQP commands')
> {code}
> ActiveMQ tells me following:
> {code}
>  WARN | Transport Connection to: tcp://x:59158 failed: org.apache.activemq.transport.amqp.AmqpProtocolException:
Could not process AMQP commands
>  WARN | Transport Connection to: tcp://x:55804 failed: java.io.EOFException
> {code}
> However, it always happens at random - without any clue on the file, size or time..
> What can I do? Python crashes at this point... So it is a blocker for me. Thanks a lot
for your help.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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


Mime
View raw message