| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| | |
No need to make this any more ugly than it needs to be :)
Change-Id: Ib7ef13bb5f04e1780565de805eb81413d7b21274
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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
|
|\ \ \ \ \ \
| |_|_|_|_|/
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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
|
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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
|
|/ /
| |
| |
| |
| |
| |
| | |
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
|
|\ \ \ \ \ |
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The socket_type and bind constructor args are never used.
We always supply a value for the envelope argument.
Change-Id: Ide2e11170a3415ef347f85bfcce759cdd55d1225
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Add a helper method to the RpcProxy class. This is a little nicer to
use for checking to see if a given message is copmatible with the set
version cap.
Change-Id: Ic44d76f4181351dff367f2d1181a3d508a11db78
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
H404 - multi line docstring should start with a summary.
Change-Id: I2099e1ee81ff9657f7a07401b8e8f3327d03bdbd
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We now have a deprecated package in Oslo where deprecated modules /
packages will be moved. In order to make this more clear and warn users,
this patch adds a warning in deprecated's __init__.py module.
Change-Id: Id7097da1b034499fec1b6d44a358223476d9ba83
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes bug 1160442
In addition to this there are the following changes:
1. The set_default method can configure the QueuePool parameters
2. The max_pool_size is defaulted to the QueuePool default
Change-Id: Ie99f7fc4edba68127c4af508290d8074d7094be9
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The super() in MatchMakerStub.__init__ was
referencing the wrong class due to copy/paste.
I've also added a test for this class.
Fixes bug 1185501
Change-Id: I298c8c1df4dcb3d3e905ecbb5400d16b3383fdf9
|