With PEP 479, the behaviour of StopIteration is changing. Raising it to
stop a generator is considered incorrect and from Python 3.7 this will
cause a RuntimeError. The PEP recommends using the return statement.
More details: https://www.python.org/dev/peps/pep-0479/#examples-of-breakage
Change-Id: Ib27581fccbbf14c082fb919d8b6edea1ac83e3c0
The fake_rabbit configuration option has been deprecated since the
release of 1.5.0 in late 2014. Finally remove it, and its test.
Change-Id: I014c2012cca0f289de0d95b9bb35bbde7f61d2ee
The call monitoring feature was introduced in commit
b34ab8b1cc9f4d513a2927c102dbbe82031d9c2a for RabbitMQ. This patch
enables the feature on the AMQP 1.0 driver - currently the only other
driver that supports RPC.
Change-Id: Ic787696852690b59779fb4716aec1e78c48bbe6a
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.
We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.
We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.
Change-Id: I02ef155ef47a5eaddf9de902ad3608bee677fbcf
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
In some specific cases, the middleware would fail to rebuild
the original exception, see bug [1] below. Adding this output
may help locate the root cause quickly.
[1]: https://bugs.launchpad.net/cinder/+bug/1728826
Change-Id: Ia9304bda4e515812b146885f830e70f28a285f2d
The example usage of transport_url in ConfFixture was not corrected when
the rest of the code was switched to using 'fake:/' for transport_url.
Since other projects will refer to this example to review changes, it
should be correct.
Also change the transport URLs used in test_transport to correspond to
the correct way of specifying virtual hosts.
Change-Id: If8e0a869e02fda2d8d2c86d82ef83ffc3a4361e4
As the first step towards removing rpc_backend, we need all of the test
fixtures to stop setting/using it via ConfFixture.transport_driver. Add
ConfFixture.transport_url, and move the tests over to setting it rather
than transport_driver.
Partial-Bug: #1712399
Change-Id: I6e2ae2b511fdc52790d5755a9aecaf2f427ab706
This adds an optional call_monitor_timeout parameter to the RPC client,
which if specified, will enable heartbeating of long-running calls by
the server. This enables the user to increase the regular timeout to
a much larger value, allowing calls to take a very long time, but
with heartbeating to indicate that they are still running on the server
side. If the server stops heartbeating, then the call_monitor_timeout
takes over and we fail with the usual MessagingTimeout instead of waiting
for the longer overall timeout to expire.
Change-Id: I60334aaf019f177a984583528b71d00859d31f84
This adds a heartbeat() method to RpcIncomingMessage to be used by a
subsequent patch implementation of active-call heartbeating. This is
unimplemented in all drivers for the moment.
Change-Id: If8ab0dc16e3bef69d5a826c31c0fe35e403ac6a1
Move the requirements for the optional drivers to
test-requirements.txt and setup.cfg. The default rabbitmq driver's
dependencies should be the only hard requirements for the base
package.
Leaving ZeroMQ deps unchanged for now as it will be removed in Stein
Change-Id: I19dd699ccf87e43202ccefb99258fbaa9ea17b7e
Set the default python to python3 except for the py27 specific test
environments. Set Python 2.7 as the python version to use for these
tests.
Temporarily ignore optional driver requirements for now. This will be
addressed in a later update.
Change-Id: Iea8e48b72234bb9a580f2345396cf60fe2022618
Fix the lower constraints to match the expected values.
We will manage the eventlet version using constraints now. See the
thread starting at
http://lists.openstack.org/pipermail/openstack-dev/2018-April/129096.html
for more details.
Change-Id: I61d5680182c53774713ee83808b1f6e7a4fba9ff
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This reverts commit c881baed29db49c5710795496cb07907e35ceaba.
Eventhough batch_size is set, rabbitMQ prefetch count is not changed
at the first time of connection creation. It works only connection reset
cases(i.e. rabbitMQ restart). So this patch can not fix original issue
https://bugs.launchpad.net/ceilometer/+bug/1551667
Moreover, it makes another bug that messages of sameple queues are not
consumed properly. So revert it.
Change-Id: Ia8ebee8e2a670e46b6a68859bc30e717bd56ed7e
Signed-off-by: Wonil Choi <wonil22.choi@samsung.com>
Closes-bug: 1759755
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.
Add openstack-tox-lower-constraints job to the zuul configuration.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: I8991c2ab1c880c401fd807e38565258403af05e8
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
At the Rocky PTG the Oslo team decided to once again deprecate and
remove the ZMQ driver. This is the first part of doing that, which
removes the unit tests and extra functional test jobs, which are
failing.
Change-Id: Ia02adf122d2d4ff281e7c9fd3dff8894da241925
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
It is recommended that all users of the Pika driver transition to
using the Rabbit driver instead. Typically this is done by changing
the prefix of the transport_url configuration option from "pika://..."
to "rabbit://...". There are no changes required to the RabbitMQ
server configuration.
Change-Id: I52ea5ccb7e7c247abd95e2d8d50dac4c4ad11246
Closes-Bug: #1744741
This merely provides a restart() method that passes through to the existing
restart() method on the StopWatch used as the internal for DecayingTimer so
that we can reset it.
Change-Id: Ie6b607ec588db94e2c768bd22ae736a05ab484c1