[
https://issues.apache.org/jira/browse/QPID-8075?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kim van der Riet updated QPID-8075:
-----------------------------------
Comment: was deleted
(was: Using the test program above, wire analysis shows:
# The outbound request message to the broker is being sent with an application
property map and a value map.
** In the case of Python 2.x, all keys and values are binary
** In the case of Python 3.x, all keys and values are utf-8 strings
# The broker seems to handle these differences and returns the identical
message in response containing the queue information, with the application
properties encoded as utf-8 strings, and the message body a map. The string
information in the map is encoded as binary. However, in the Python 3.x case,
the client times out and the request fails. This would seem to indicate that
the issue is on the client side, and is indeed a Python 2 / 3 issue, probably
related to the handling of binary vs. strings.)
> BrokerAgent not working for me
> ------------------------------
>
> Key: QPID-8075
> URL: https://issues.apache.org/jira/browse/QPID-8075
> Project: Qpid
> Issue Type: Bug
> Components: QMF
> Affects Versions: qpid-cpp-1.37.0
> Environment: Fedora 25, fully up to date
> via dnf I installed:
> qpid-proton-c-0.17.0-5.fc25.x86_64
> qpid-cpp-server-1.36.0-1.fc25.x86_64
> pip freeze in my virtual environment is:
> python-qpid-proton==0.19.0
> qpid-tools==1.37.0
> Note this is with Python 3.5.4
> Note that qpid-tools is a checkout that includes this commit
> 0ffa89e177346e68bdeb5a24b9f25190c983bd34 because I need it, and the version
> on PyPI does not include it.
> Reporter: Brian Bouterse
> Assignee: Kim van der Riet
> Priority: Blocker
> Fix For: qpid-cpp-1.38.0
>
>
> 1. Start qpidd and verify that it starts
> 2. Verify it's listening on 5762 using `sudo netstat -planet | grep 5672`
> 3. Telnet connect to it with `telnet localhost 5672` observe that it connects
> Try to connect it to with qmf.BrokerAgent
> from qmf.client import BrokerAgent, ReconnectDelays
> conn_opts = {'url': 'amqp://localhost:5672'}
> ba = BrokerAgent.connect(**conn_opts)
> ba.getAllQueues()
> I get this exception after 10 seconds:
> File "/home/vagrant/devel/kombu/kombu/transport/qpid.py", line 586, in
> exchange_declare
> self._broker.addExchange(type, exchange, options)
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/qmf/client.py",
> line 344, in addExchange
> self._method('create', args)
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/qmf/client.py",
> line 233, in _method
> response = self._retry(self._request, '_method_request', content)
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/qmf/client.py",
> line 215, in _retry
> return f(*args, **kwargs)
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/qmf/client.py",
> line 224, in _request
> return self._client.call(Message(body=content, properties=props,
> subject="broker"))
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/qmf/client.py",
> line 118, in call
> return self.wait(self.send(request))
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/qmf/client.py",
> line 137, in wait
> self.connection.wait(wakeup, msg="Waiting for response")
> File
> "/home/vagrant/.virtualenvs/pulp/lib64/python3.5/site-packages/proton/utils.py",
> line 292, in wait
> raise Timeout(txt)
> proton.Timeout: Connection amqp://localhost:5672 timed out: Waiting for
> response
> What is interesting is that on the same system with simply_send.py (the
> standard example) it connects and sends with the exact same url. I do that
> with this:
> (pulp) [vagrant@pulp3 devel]$ python simple_send.py --address
> 'amqp://localhost:5672' -m 1
> all messages confirmed
> The 'all messages confirmed' suggests that everything went fine and the
> reactor called on_accepted().
> So I conclude that BrokerAgent is somehow fundamentally not working or my
> environment is screwed up somehow.
> This same commit checkout was working with Python 2.7. I don't have that
> environment handy currently, but I suspect this is somehow broken with Python
> 3.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]