[ https://issues.apache.org/jira/browse/QPID-8075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16334573#comment-16334573 ]
Kim van der Riet commented on QPID-8075: ---------------------------------------- Given that we accept 1. above and accept the limitations of QMF using only string correlation-ids, the following patch would solve this problem: {noformat} diff --git a/management/python/lib/qmf/client.py b/management/python/lib/qmf/client.py index 3ba8e4b50..89beaca85 100644 --- a/management/python/lib/qmf/client.py +++ b/management/python/lib/qmf/client.py @@ -104,7 +104,7 @@ class SyncRequestResponse(IncomingMessageHandler): self.lock.acquire() try: self._cid += 1; - return struct.pack("L", self._cid) + return struct.pack("I", self._cid).decode('ascii') finally: self.lock.release() {noformat} for both Python 2 and Python 3. It would send the correlation ids as 4-byte 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: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org