| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Fixes bug 1192924.
Change-Id: Ic6d9715c945e620da20b43310e8e8ba79296e4ad
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
This unfortunately needed if we want to parse URL with params and
unknown schemes.
Change-Id: Ia7d8212370201254e537e6f1dd9b15d669a3252f
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
See bug #1180166, basically we shouldn't be trying to reconnect to
exclusive queues.
Fixes: bug #1180166
Change-Id: I71ac5a150ea8c4d97a34404cb821ce8e8dfa152d
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
bug 1189711 Should RPC consume_in_thread() be more fault tolerant?
There are unprotected holes in the thread kicked off by RPC
consume_in_thread such that an exception will kill the thread.
This exists for both the service (TopicConsumer) and the new
reply proxy (DirectConsumer) consumers. This patch plugs
those holes as close to the base of the consumer thread as
possible by catching all non-caught exceptions and retrying
with sleeps between retries and some pacing of the log
output to prevent log flooding.
Change-Id: I0d6ec8a5e3a310314da201656ee862bb40b41616
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
These filters have been implemented in Quantum before:
- IpFilter provides support for filtering ip commands
- IpNetnsExecFilter is a chaining command filter that
verifies that the command to be executed by ip netns exec
is covered by other established filters.
IpNetnsExecFilter has been restricted to ensure that the
filter chains have all matching filters run as the same
user.
EnvFilter is a new filter derived from CommandFilter
that allows a Command to be optionally prefixed by "env"
and a specific list of environment variables.
This is intended to replace the specific DnsmasqFilter
and DnsmasqNetnsFilter in the future when all consumers
have been updated.
Implements bp rootwrap-quantum-features
Change-Id: I0cf39967126e99a8dc53d21bee824a0fe2f63aa0
|
|\ \ \ \ \ |
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The first commit of Nova contains this code as
https://github.com/openstack/nova/blob/bf6e6e7/nova/rpc.py#L149
try:
publisher.send({'result': reply})
except TypeError:
publisher.send(
{'result': dict((k, repr(v))
for k, v in reply.__dict__.iteritems())
})
but when the kombu driver was first added, it became:
https://github.com/openstack/nova/blob/9cb46c48/nova/rpc/impl_kombu.py#L717
try:
msg = {'result': reply, 'failure': failure}
except TypeError:
msg = {'result': dict((k, repr(v))
for k, v in reply.__dict__.iteritems()),
'failure': failure}
conn.direct_send(msg_id, msg)
Obviously, TypeError can't be raised with the current code and we dump
everything to json these days before passing down to kombu, qpid, etc.
Change-Id: I932fbfbbe824fbd9de8d31f070878e9db853ee45
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When there is no help available for an option, the generator.py
simply crashes. This fixes this by initialising opt_help.
Fixes Bug1194524
Change-Id: I94c23973bdad603703f12e936b7e72fe0e81c3f0
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Raising NEW exception is bad practice, because we lose TraceBack.
So all places like:
except SomeException as e:
raise e
should be replaced by
except SomeException:
raise
If we are doing some other actions before reraising we should
store information about exception then do all actions and then
reraise it. This is caused by eventlet bug. It lost information
about exception if it switch threads.
fixes bug 1191730
Change-Id: I7bce659591c4c3e4bc41e12d7d8390128c30e2e4
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
There is no point to ignore this check because everything works
correctly without it.
Change-Id: I38b6f2314208b3bfb5898b2a08d7fe7c0f640e57
|
|\ \ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Config tox.ini updated to run testr instead of nosetests.
File test-requirements.txt modified respectively.
Config .testr.conf added.
Testr allows for more flexible testing, more consistent use of the
unittest protocol and, most importantly, faster testing via parallelism.
Part of blueprint run-tests-script.
Change-Id: Iba847d430a18458a1a68e6ef07541d29c0c01c64
|
|\ \ \ \ \ \ \
| |_|/ / / / /
|/| | | | | | |
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This framework was merged a year ago and AFAICT hasn't seen use beyond
the two initial wikimedia extensions for Nova.
The framework basically allows a way for a single plugin to register API
extensions and notification hooks. Both of these can be done by directly
using config opts like osapi_compute_extension and notification_driver
so this framework really only helps if we expected to (and wanted to)
lots of these plugins in the wild.
Nova is the only project using this and we don't have an active
maintainer listed in the MAINTAINERS file, so it seems like it's time to
remove it from the incubator.
Change-Id: I5552b5625e26f4821464807743545ec6f5117f2b
|
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The new messaging work will register options like rpc_backend and, since
the existing RPC API registers those options with CONF, we need to run
the messaging tests with a different ConfigOpts object.
It's actually probably pretty sane for all unit tests to use a per-test
ConfigOpts object rather than cfg.CONF anyway.
The kombu and zmq tests have an issue with this where they rely on being
able to call self.config() before the base class setUp() is called.
Fixing this properly is a little tricky, so for now, initialize
self.conf early to cfg.CONF just for these tests.
Change-Id: I7b2e3db7c21c511f3ab16ac866e0cc80846cbd80
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Rather than blindly ack() all messages, consumers can be created
that reject() the message if an exception occurs in the callback.
Currently only implemented in kombu driver.
Change-Id: I308dd794b50966e3a189d31b2b51fdac36cd7d3a
|
|\ \ \ \ \ \ |
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Update the kombu requirement based on the new
value in the global requirements list.
The new version of kombu we are using depends on
anyjson>=0.3.3.
Related to bug #1134575
Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>
Change-Id: I36211a2730bfc712e189d39893ab2af513ce3ba9
Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>
|
|\ \ \ \ \ \ |
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Creates a new file called TESTING.rst making the file discoverable.
Contents of the file include very generic instructions to get newcomers
started with testing. File also includes links, including the OpenStack
wiki page on testing, encouraging the curious to access greater options
for testing individual projects as well as greater flexibility in testing.
Change-Id: I57ab249133eccd38fa5302809e06172ed6a7d89e
|
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fixes bug 1193557
Change-Id: I483099b205c71d66cf97522307d8265abe83a488
|
|\ \ \ \ \ |
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Python3 enforces the distinction between byte
strings and text strings more rigorously than
python2. So use six.text_type where approiate
and six.string_types.
Change-Id: Iaab049fff97278d94fd7ab932a514949094a949a
Signed-off-by: Chuck Short <chuck.short@canonical.com>
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | |
| | | | |
Change-Id: Ia5a355557bf98b0152cb606ffd5c13d97fa71074
Signed-off-by: Julien Danjou <julien@danjou.info>
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes bug #1188029
This relay functionality appears to be completely unused and untested
so just remove it. If we need it in future, we can restore it from the
git history.
Change-Id: I479d654aefdbd58c80946818b9a405eaa02644db
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently, SQLite DB in a file is used for testing of DB related
code. Thus, in each test case we have to ensure that tearDown()
drops all created tables, etc. It is much easier and cleaner to
guarantee that DB is in the original state by creating it in
memory instead.
Change-Id: I6f0a9735a0fb31bef30842afff50c6089fa2bf92
|
| |/
|/|
| |
| |
| |
| |
| | |
The original logic was not intuitive.
Changed the code for better readability.
Change-Id: I0d96105d4ff22eed827ed61466a26f69f33addd1
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
KillFilter currently expects an absolute path
to be specified for the process name to kill. This
is inconvenient when the exact location of the running
binary is not known or differs accross installs.
Extend KillFilter to accept also commands in $PATH
to be killed if the given argument is not absolute.
Change-Id: I6b90206b587ff3f949af2c256a78ca21af31867a
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes the default values for hostnames and paths.
Change-Id: I434a4f0269e2d0a3a667056233078ff01d0cdb72
Signed-off-by: Julien Danjou <julien@danjou.info>
|
|\ \ \
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Multiple projects are starting to copy around the various
function utilities that exist in nova and elsewhere. It
would seem appropriate that there exist a helper file in
oslo that was used instead as a central place for this type
of code.
Change-Id: Ia83f26da16b0c868506ecf90e1aaf8affecf3617
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When an exception happens in an RPC call using nova cells, it can travel
back up several RPC boundaries. eg, child-cell=>parent-cell=>nova-api
Before this patch if an exception (eg. AggregateNotFound) was raised in
the bottom layer, the next layer up would turn it into a special
exception ( AggregateNotFound_Remote ), then in the final layer, it would
see this as an unrecognizable exception and raise RemoteException.
After this patch, at each layer where the expeption is deserialized,
it'll recognize exceptions with the _Remote postfix, and leave them as
they are, instead of turning them into RemoteExceptions.
It also preserves the exception's original __module__ now.
Change-Id: I158a80f1cec20d3e1805b565ffddaffd7a15295b
|
|\ \ \ \
| |/ / /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This function will be used in apiclient library.
Change-Id: I19f976eda896e7bede07510aafebe4931e512351
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
blueprint amqp-rpc-fast-reply-queue
As part of the Grizzly code review for the above blueprint (Idb09a714), the Grizzly
code base is "aware" of this feature in terms of receiving RPCs and provided with
an option for enabling it on the RPC send side. It was decided that in Havana
the option would be removed, RPCs would only be sent using the new functionality
yet awareness of prior functionality be retained for the receiving of RPCs.
This code change implements the Havana piece.
Change-Id: I5f2a8e432cf84a637c1aa813656c1cbc8db6e7eb
|
|\ \ \ \ \ |
|