1279 Commits

Author SHA1 Message Date
Jenkins
118da5ffaa Merge "Updated from global requirements" 2015-11-29 12:53:30 +00:00
Jenkins
c57ff6173c Merge "Revert "serializer: remove deprecated RequestContextSerializer"" 2015-11-29 04:36:48 +00:00
Davanum Srinivas (dims)
6cd1dcebc0 Revert "serializer: remove deprecated RequestContextSerializer"
This reverts commit fb2037bcb492137ee7de5488c30ef8941b914e13.

Change-Id: I9b32708340c232369940738ade14cb6cbb02b331
2015-11-29 02:21:46 +00:00
OpenStack Proposal Bot
067cac36be Updated from global requirements
Change-Id: I6670a181e2e2fe3ed1c96d0a16525c2d6eada436
2015-11-27 17:47:01 +00:00
Jenkins
887b9482af Merge "[zmq] Random failure with ZmqPortRangeExceededException" 2015-11-27 14:35:40 +00:00
Jenkins
ec5640a646 Merge "[zmq] Driver optimizations for CALL" 2015-11-27 14:35:19 +00:00
Jenkins
12611ed5e7 Merge "serializer: remove deprecated RequestContextSerializer" 2015-11-27 13:55:17 +00:00
Oleksii Zamiatin
47baebde1f [zmq] Random failure with ZmqPortRangeExceededException
Don't restrict ports range for all the other unit tests.

Change-Id: I47d566f3488d371cff604dac72c94c775d729487
Closes-Bug: #1519312
2015-11-27 12:02:31 +00:00
Oleksii Zamiatin
eea60cfb36 [zmq] Driver optimizations for CALL
New DEALER-based publisher provided for CALL.
Futures-based reply waiting makes possible to
refuse using of REQ blocking socket and also
reduce number of openned sockets to a socket-per-target
instead of socket-per-message as it was for CALL.

Closes-Bug: #1517999

Optimized redis requests - request once instead of
per each message. This should be elaborated with an
autonomous nodes discovery mechanism to be correct
in general case.

Closes-Bug: #1517993

Reduced number of INFO log messages. Most of them switched
to the DEBUG level.

Closes-Bug: #1517997

Change-Id: Id017e79368cdc68613ddd7adef26411ea422dc8c
2015-11-27 12:02:02 +00:00
Jenkins
e5a232ce03 Merge "Add log info for AMQP client" 2015-11-26 23:11:32 +00:00
OpenStack Proposal Bot
a811cf3e8b Updated from global requirements
Change-Id: Idc6649634438a2a0f33cc463594ad347a3674bc2
2015-11-25 22:27:46 +00:00
Jenkins
a8c6a67c18 Merge "Use oslo_config new type PortOpt for port options" 2015-11-25 19:46:31 +00:00
ZhiQiang Fan
533a0f8f3d Use oslo_config new type PortOpt for port options
The oslo_config library provides new type PortOpt to validate the
range of port now.

Note, rpc_zmq_max_port is a socket port upper limit, so leave it untouched.

Change-Id: Icac28141bcb09e2b894662de1a6497766351919d
Closes-Bug: #1518256
ref: https://github.com/openstack/oslo.config/blob/2.6.0/oslo_config/cfg.py#L1114
2015-11-26 05:05:09 +08:00
Jenkins
9938f668f4 Merge "Add Warning when we cannot notify" 2015-11-25 19:28:42 +00:00
Julien Danjou
fb2037bcb4 serializer: remove deprecated RequestContextSerializer
This also allows us to drop the oslo.context dependency!

Change-Id: I1434caf6323fb417ff99ceff865a0d43799e89b2
2015-11-25 18:19:58 +01:00
Jenkins
e0d0fe83ce Merge "serializer: deprecate RequestContextSerializer" 2015-11-25 16:41:59 +00:00
Jenkins
5b8ec37bcf Merge "middleware: remove oslo.context usage" 2015-11-25 16:13:08 +00:00
Kui Shi
a33c761e62 Add log info for AMQP client
If librabbitmq is installed and can be imported correctly, it will
be used as AMQP client to connect RabbitMQ. Mark it in the log file.

Change-Id: I33807df67dd2fffa13c675324c8cc7ae716a210e
Signed-off-by: Kui Shi <skuicloud@gmail.com>
2015-11-25 09:08:10 +00:00
OpenStack Proposal Bot
4ea583b718 Updated from global requirements
Change-Id: I6bc59397619d4cf06b8e18b8f48e27b2e0c8c862
2015-11-24 14:45:11 +00:00
Davanum Srinivas
6dba2ed591 Add Warning when we cannot notify
Calling Notifier.audit() won't work with LogDriver as the
logger does not have a audit level anymore, So let's at
least not fail silently and let the operators know that
we are dropping stuff on the floor.

Closes-Bug: #1518170
Change-Id: I74002c72e6763ea8b5df7d97d722619bd4a1950b
2015-11-24 02:08:07 +00:00
Julien Danjou
196980dace serializer: deprecate RequestContextSerializer
We plan to remove it to avoid dependency on oslo.context.

Change-Id: I21d76abf1c30b9e89cb8a6c20d1c0cc79cd83a3f
2015-11-23 15:32:09 +00:00
Julien Danjou
47a906aff3 middleware: remove oslo.context usage
There's nothing interesting in the fake context we're passing. Let's
stop depending on oslo.context all together here.

Change-Id: I7784bc3b818e67118e03905857c39eac66765fad
2015-11-23 15:30:23 +00:00
Jenkins
5840ab3340 Merge "Remove qpidd's driver from the tree" 2015-11-23 14:56:33 +00:00
Jenkins
7773b7eed8 Merge "make pep8 faster" 2015-11-20 19:59:20 +00:00
Jenkins
a73dd85f39 Merge "Some executors are not async so update docstring to reflect that" 2015-11-20 19:35:59 +00:00
Flavio Percoco
925eb734a9 Remove qpidd's driver from the tree
Back in liberty we marked this driver as deprecated. This patch removes
it from the tree. The patch also removes tests, options and other
references in the documentation. Note that one script is being kept
because it's required by the amqp driver.

Depends-On: If4b1773334e424d1f4a4e112bd1f10aca62682a9
Change-Id: I4a9cba314c4a2f24307504fa7b5427424268b114
2015-11-20 18:43:28 +00:00
Jenkins
13dbf4d4bb Merge "Provide alias to oslo_messaging.notify._impl_messaging" 2015-11-20 17:34:23 +00:00
Matt Riedemann
15cd99050c Provide alias to oslo_messaging.notify._impl_messaging
Ifb96c2ae9868426cac2700bf4917c27c02c90b15 moved the _impl_messaging
module to oslo_messaging.notify.messaging which breaks neutron.

Neutron is fixed on master for mitaka but neutron on stable/liberty
is broken, and changing neutron on stable/liberty to use the new
path would require a global-requirements minimum version bump for
oslo.messaging to 2.6.0, which we want to avoid for people that have
already shipped liberty.

So provide an alias to the moved module so neutron in stable/liberty
continues to work. We deprecate the module so consumers know they
need to upgrade and move off this. We may need to cap oslo.messaging
in global-requirements on stable/liberty at some point when we remove
the deprecated alias module.

Change-Id: I29453e0fbf30b0a571c2b1afc7cc81d1a11535f0
Closes-Bug: #1513630
2015-11-19 12:45:14 -08:00
Sean Dague
9843641b86 make pep8 faster
This builds a stripped down tox target for pep8 that doesn't need a
giant venv with all the things. Works fast and lean, and makes julien
fries.

Change-Id: Id5b7671fb7f2b8cbf88745fd12f9238b3c0bb2dd
2015-11-19 14:48:13 -05:00
OpenStack Proposal Bot
52be09af4d Updated from global requirements
Change-Id: Ib8cbf18578b4bfd1be8d5f529d646645bf3e8c71
2015-11-19 16:00:26 +00:00
Jenkins
9dbbc1f243 Merge "Robustify locking in MessageHandlingServer" 2015-11-17 23:37:39 +00:00
Jenkins
623a064d05 Merge "cleanup tox.ini" 2015-11-17 12:34:49 +00:00
Matthew Booth
00d07f5205 Robustify locking in MessageHandlingServer
This change formalises locking in MessageHandlingServer, which closes
several bugs:

* It adds locking for internal state when using the blocking executor,
  which closes a number of races.
* It does not hold a lock while executing server functions,
  which removes a potential cause of deadlock if the server does its
  own locking.
* It fixes a regression introduced in change
  gI3cfbe1bf02d451e379b1dcc23dacb0139c03be76. If multiple threads
  called wait() simultaneously, only 1 of them would wait and the
  others would return immediately, despite message handling not having
  completed.  With this change only 1 will call the underlying wait,
  but all will wait on its completion.

Additionally, it introduces some new functionality:

* It allows the user to make calls in any order and it will ensure,
  with locking, that these will be reordered appropriately.
* The caller can pass a `timeout` argument to any server method, which
  will cause it to raise an exception if it waits too long.
* The caller can pass a `log_after` argument to any server method,
  which will cause it to raise a log message if it waits too long. It
  can also be used to disable logging when waiting is intentional.

We remove DummyCondition as it no longer has any users.

This change was originally committed as change
I9d516b208446963dcd80b75e2d5a2cecb1187efa, but was reverted as it
caused a hang in a Nova test. This was caused by the locking behaviour
for handling restarting a previously stopped server. The original
patch caused the state to 'wrap' immediately after the user called
wait(). This caused a hang in tests which redundantly called stop()
and wait() multiple times. This new patch only wraps when the user
calls start() again. Callers who do not restart a server will
therefore not be affected by the wrapping behaviour. Callers who do
restart a server will be no worse than before. We add a deprecation
warning on restart, as this operation is inherently racy with this api
and there is a simple, safe alternative.

This new version has been successfully tested against the unit and
functional tests of nova, cinder, glance, and ceilometer.

Change-Id: Ic79f87e7b069c1f62d6121486fd6cafd732fdde7
2015-11-17 11:26:54 +00:00
OpenStack Proposal Bot
bfa6f5af03 Updated from global requirements
Change-Id: Ic5436cf41d5e6c10e4080bc6c42694d2542c970c
2015-11-17 02:30:04 +00:00
Davanum Srinivas
a2ff73cb80 cleanup tox.ini
* Remove requirements.txt from deps, as this is
  already added automatically


Change-Id: I696dd69ba1d59ab026180e8e3cb864fe37442e10
2015-11-16 00:36:00 +00:00
Oleksii Zamiatin
4a3ddce05b [zmq] Add config options to specify dynamic ports range
Operators may need a possibility to restrict ports ranges for a specified services
in order to distinguish ports related to zmq messaging from all other ports in a system.

Change-Id: Ibe5b02c1211b16859ff58bc02a59d96e1d2fa660
Closes-Bug: #1511181
2015-11-13 15:22:39 +02:00
Jenkins
3f6ef7be46 Merge "[zmq][matchmaker] Distinguish targets by listener types" 2015-11-13 13:17:34 +00:00
Jenkins
a3822ba09a Merge "[zmq] Make bind address configurable" 2015-11-13 13:13:18 +00:00
Oleksii Zamiatin
018dfcd641 [zmq] Make bind address configurable
Makes use of exisiting 'rpc_zmq_bind_address' option in
order to make binding address configurable.

Change-Id: Ia46fa03e54b0e92d3504d9a0ebd65171a283e073
Closes-Bug: #1515267
2015-11-13 10:37:15 +00:00
Oleksii Zamiatin
517ae12b17 [zmq][matchmaker] Distinguish targets by listener types
In order to have a possibility to pass messages via different
pipelines (not over DEALER/ROUTER only) we need an information
in the name service about socket type assigned to the target.

Change-Id: I7cdba6c2c91af7f63ecca30c94faecef2c2eff8b
Closes-Bug: #1497326
2015-11-13 10:36:39 +00:00
Oleksii Zamiatin
d571b66425 [zmq] Update zmq-deployment guide according to the new driver
New driver introduced some new options and changed its architecture.
The first update of the deployment guide after the driver being
reimplemented. Following driver updates should be reflected in the
guide as well.

Change-Id: Id8629907560e335dfcff688082fe943b3657568c
Closes-Bug: #1497278
2015-11-13 10:36:11 +00:00
Jenkins
497811b722 Merge "Decouple transport for RPC and Notification" 2015-11-13 03:20:19 +00:00
Dmitry Tantsur
26d9362e5d Make "Connect(ing|ed) to AMQP server" log messages DEBUG level
According to our guidelines, INFO level is for unit-of-work messages
valueable for an operator. This rules out "connecting" message.
As to "connected", while it might fall under guidelines, it seems
to flood logs without too much value, see for example:
http://logs.openstack.org/98/219298/9/check/gate-tempest-dsvm-ironic-pxe_ipa/53784fb/logs/screen-ir-api.txt.gz?level=INFO

Change-Id: I65e0f19590c42d25e5551d45af37416a01a7d638
2015-11-12 04:47:10 +00:00
OpenStack Proposal Bot
8130e833a4 Updated from global requirements
Change-Id: I3fe04f3751e79f87517d4078faea03344fe8f68e
2015-11-11 17:23:28 +00:00
Jenkins
710e01b436 Merge "Fixing the server example code Added server.stop() before server.wait()" 2015-11-11 13:51:46 +00:00
Davanum Srinivas
6621b9010e Decouple transport for RPC and Notification
Add a new configuration option for setting up
an alternate notification_transport_url that
can be used for notifications. This allows
operators to separate the transport mechanisms
used for RPC and Notifications.

DocImpact

Closes-Bug: #1504622
Change-Id: Ief6f95ea906bfd95b3218a930c9db5d8a764beb9
2015-11-10 20:40:22 -05:00
BANASHANKAR KALEBELAGUNDI VEERA
33243c26ac Fixing the server example code
Added server.stop() before server.wait()

Change-Id: I9764c77e0aa076b6a7b9bb9715e2ead89b12126f
2015-11-10 14:58:17 -08:00
Jenkins
468437454f Merge "Revert "Robustify locking in MessageHandlingServer"" 2015-11-10 18:34:35 +00:00
Sean Dague
e5b15ce642 Revert "Robustify locking in MessageHandlingServer"
This reverts commit d700c382791b6352bb80a0dc455589085881669f.

This commit is causing a timeout/lock wait condition when using the in 
memory rpc bus. It exposed in the Nova unit / functional tests which use
this extensively.

Change-Id: I9610a5533383955f926dbbb78ab679f45cd7bcdb
Closes-Bug: #1514876
2015-11-10 15:34:05 +00:00
Clint Byrum
64518fa170 Move supported messaging drivers in-tree
Up until now it has only been available in the OpenStack spec, but it is
a living document and I believe we can maintain it in oslo.messaging's
tree.

Change-Id: I7bb9e5f02004f857d8f75909fcc0d05f2882a77d
2015-10-30 14:09:37 -07:00