| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Provides support for letting each running service finish in-progress
requests and cleanup gracefully before stopping.
blueprint graceful-shutdown
Change-Id: Idf137620b87417de89eba23f05daf08780dc9dff
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In some cases we need to save an exception and reraise it only
under certain conditions. As written, the
save_and_reraise_exception context always reraises, which means
it can't always be used. This change adds a flag that allows
conditional reraising to address the limitation.
Change-Id: Ib5c6406a1b91daff94cc4aa305dcb7d6262aecdc
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change replace sys.exit by a RPCException like the zmq
implementation does, to allow library users to handle the case of the
rpc failure in their applications.
Change-Id: Iafda7bfa20840fa5488dece1d5ad49e2b14b73b5
|
|\ \ \
| |_|/
|/| | |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
replace "no" (string) with False (boolean). Added a test case
Fixes LP# 1195511
Change-Id: Ib72689b11d747508850ccab8ef1d73727da2caa6
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Common routines for Key Derivation (RFC 5869) and Symmetric Cryptography
that uses standard Crypto functions as exported by PyCrypto
Change-Id: Ib43ac788ec98b8a1b678ac457244a06a16833761
Implements: blueprint trusted-messaging
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| | |
In locked down environments, PATH might be unavailable
when running rootwrap.
Change-Id: Ia55514a7d69ab26c2bcf5d1839da1d36aaf46ebc
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We found that if tests run with testr --subunit option it can cause
wrong implementation of tests results.
Change-Id: I98c3f3ed90e2291ef984f07a93c89d24da7855d9
|
|\ \ \
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Users who may not know that configuring a backdoor_port with 0
allows multiple services to be enabled for the eventlet backdoor
or who simply want a more predictable port assignment might like
this patch. If the specified port is in use, it is incremented
until a free port is found. This is a backdoor_port collision
recovery scheme as opposed to the collision failure scheme
that exists today.
This related to I95fdb5ca: Add support for backdoor_port to be
returned with a rpc call.
Change-Id: I7ec346db3575995fa15483b617eea34c1e003bb0
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| | |
This enlightens jsonutils.to_primitive() about how to serialize
netaddr.IPAddress objects. Since these types are serializable
in their native form with just string coercion, just do that here.
Fixes bug 1195097
Change-Id: I358b0731e4d3774e5b36aefb5384fdfb75fd31b6
|
| |
| |
| |
| |
| |
| | |
Fixes bug 1192924.
Change-Id: Ic6d9715c945e620da20b43310e8e8ba79296e4ad
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| | |
This unfortunately needed if we want to parse URL with params and
unknown schemes.
Change-Id: Ia7d8212370201254e537e6f1dd9b15d669a3252f
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|\ \ \ \ |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
|/ /
| |
| |
| |
| |
| | |
Fixes bug 1193557
Change-Id: I483099b205c71d66cf97522307d8265abe83a488
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|