1179 Commits

Author SHA1 Message Date
Daisuke Fujita
64fb61d37c Fix typo in rpc/server.py and notify/listener.py
1. "messaging configuration configuration" to "messaging configuration"

Change-Id: Icda5d2df67cc4d2d0e0cb3a453d0b04dd998e5f4
2015-10-09 22:20:51 +09:00
Jenkins
367e28b0f1 Merge "Skip Redis specific tests when it is not installed" 2015-10-08 22:26:21 +00:00
Jenkins
7eadea5bec Merge "AMQP 1.0: Properly initialize AMQP 1.0 configuration options" 2015-10-08 13:57:21 +00:00
Davanum Srinivas
d9bb2f4b94 ConfFixture should work even when zmq/redis is not present
Previous driver and other locations in the code we used
zmq_async.import_zmq() and importutils.try_import() to
not fail fast when pyzmq and redis python packages are
not installed. If we don't do this, we are going to break
Nova/Cinder/Glance etc.

Closes-Bug: #1503499
Change-Id: I1529241b5e1d902b37d6b610646a5a46a18f13b0
2015-10-07 12:41:31 +03:00
Jenkins
543d303bfd Merge "Added matchmaker timeouts and retries" 2015-10-06 20:28:13 +00:00
Alexi Yelistratov
5e4cddf7ef Added matchmaker timeouts and retries
Fixed and restored previously skipped test CallTestCase.test_timeout
_connect_to_host() and get_single_hosts() now accept optional timeout
parameter.
_connect_to_host() accepts optional retry parameter
If timeout value (in seconds) is greater than 0, the connection attempts
will be retried $retry times with a specified timeout.

Change-Id: I1c897d917d0defda581b8ff62e7a67e32f011fee
Closes-Bug: #1499713
2015-10-06 20:16:14 +03:00
Kenneth Giusti
4efd89f7c2 AMQP 1.0: Properly initialize AMQP 1.0 configuration options
This patch adds AMQP 1.0 configuration options to the ConfFixture
class.

Change-Id: I01e7113358967939f22d6bc452b03e80101c9814
Closes-Bug: #1503299
2015-10-06 12:07:04 -04:00
OpenStack Proposal Bot
3b5d300512 Updated from global requirements
Change-Id: I1e601c782a7463416db52470bf2812f9e95c79c2
2015-10-05 23:17:50 +00:00
Davanum Srinivas
1cb51c8983 Skip Redis specific tests when it is not installed
Change-Id: I08d7fcb62966c56538bf1581fe19bb38d350e38b
2015-10-05 15:09:23 -07:00
Jenkins
76a6a7608b Merge "Remove unnecessary rpc_zmq_port option" 2015-10-04 22:46:08 +00:00
Kenneth Giusti
3419c95207 Port the AMQP 1.0 driver to Python 3
Minor syntax fixes to allow the AMQP 1.0 driver to run under Python
2.7 and 3.4.

Closes-Bug: #1477124
Change-Id: I8512bb8274fad78285ab59797ba9b3f0f8b5c171
2015-10-03 18:42:33 +02:00
Jenkins
29dc193179 Merge "rabbit: shuffle hosts before building kombu URL" 2015-10-03 02:03:50 +00:00
John Eckersberg
f2beb5eaf1 rabbit: shuffle hosts before building kombu URL
This restores behavior as it was back in the Juno cycle.  This was
changed in a refactor during the Kilo cycle (973301aa) when the kombu
failover_strategy was set to shuffle.  But the failover_strategy only
affects failovers; it does not influence which host receives the
initial connection.

Thus, if multiple hosts are given, the first host will receive all of
the initial connections.  By shuffling the hosts before building the
URL given to kombu, rudimentary load balancing is achieved and
connections are more evenly spread across broker nodes.

Change-Id: Ieecaf5f286f49302db29df9854359ef5d36b7a89
2015-10-02 13:47:21 -04:00
OpenStack Proposal Bot
7f0d2c78b8 Updated from global requirements
Change-Id: I931405ec0f732d2138270ea2417a9fdd5a4267d5
2015-10-02 17:11:34 +00:00
Alexi Yelistratov
74871e0860 Remove unnecessary rpc_zmq_port option
Remove unnecessary rpc_zmq_port option from zmq driver, because zmq
driver doesn't use static port any more - dynamic port binding is used
for running servers.

Closes-Bug: #1497277
Change-Id: I91e978347dd364b2d4c00bc223b0e3ecface7c43
2015-10-02 13:10:35 +03:00
Jenkins
3a5db723aa Merge "Non-blocking outgoing queue was implemented" 2015-09-30 16:11:29 +00:00
Oleksii Zamiatin
3067dbd198 Non-blocking outgoing queue was implemented
The main issue with eventlet.green.zmq is that libzmq as a C-library
is completely monkey-patch unfriendly. So any blocking call inside
the native library makes calling process stuck. We can't avoid this
actually in an absolutely normal situation when a client appears
earlier than listener we have all client process get stuck until listener
raised. If the listener for example is also blocked awaiting for some
other service to appear we have a chain of locks which may occasionally
result in a dead-lock. The other situation with Notifier is quite similar.

For that reason zmq-broker was restored, but now it serves as an outgoing
queue on a client side. Servers remained the same dynamically port-binded.
Now all clients can still use green-zmq, but presence of the broker-queue
on a host guarantees that green threads will never blocked in a client
because all messages will wait their listeners inside the broker queue.
The broker process's modules are not monkey-patched, they make use of native
threading and native zmq.

Possibility to run without broker also remains. The option zmq_use_broker
introduced for that reason.

Closes-Bug: #1497315

Change-Id: I786b100fd6ee1cf4b99139db0ca044d358d36345
2015-09-28 14:14:53 +03:00
Jenkins
8b52367c53 Merge "Fix the home-page value with Oslo wikipage" 2015-09-25 22:59:29 +00:00
Davanum Srinivas
1893c495f6 Allow custom notification drivers
Our class hierarchy hides classes and modules that so its hard
for folks to write a custom Notification driver. We should
make these public and document them

Closes-Bug: #1426046
Change-Id: Ifb96c2ae9868426cac2700bf4917c27c02c90b15
2015-09-25 10:07:05 -04:00
venkatamahesh
0a4c321ee0 Fix the home-page value with Oslo wikipage
Change-Id: I4b72377329e055096d8636f4734c9272ca8ec3a8
2015-09-25 14:44:50 +05:30
Jenkins
b1af9c25c2 Merge "Fix spelling typo in output" 2015-09-25 06:23:52 +00:00
Jenkins
0bebd34f0d Merge "Include changelog/history in docs" 2015-09-24 22:52:41 +00:00
Joshua Harlow
56cc57e418 Include changelog/history in docs
Change-Id: I2d1f8642498311ec37f1399fa3259eda4199f1f2
2015-09-24 13:29:30 -07:00
Jenkins
43d755b326 Merge "Enhance start/stop concurrency race condition fix" 2015-09-24 10:54:56 +00:00
Jenkins
9ba5a40e39 Merge "Add SASL configuration options for AMQP 1.0 driver." 2015-09-24 10:54:50 +00:00
Jenkins
f9834cd8d0 Merge "Unsubscribe target listener when leaving" 2015-09-24 10:33:21 +00:00
Zhao Lei
9138ba24b8 Fix spelling typo in output
abandonning -> abandoning
for output of oslo_messaging/_drivers/impl_rabbit.py

Plus some small fix for source comments/config help.

Change-Id: Ia4bd1465cbe8beef8e109d20e5ddbec12d6d8e8f
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
2015-09-24 18:11:22 +08:00
Monty Taylor
6f95227e33 Change ignore-errors to ignore_errors
Needed for coverage 4.0

Change-Id: I96658f8f910e8e89ade81d5a33ab6591ca930d1b
2015-09-21 14:43:07 +00:00
Oleksii Zamiatin
0607cfd6fd Unsubscribe target listener when leaving
We are using Redis-based persistent name storage, so
unrelated references should be cleaned when listener
doesn't exist any more.

Change-Id: I464a17d6de1d1679244db51f54f620017da071b3
2015-09-21 16:33:31 +03:00
Kenneth Giusti
518e4e899f Add SASL configuration options for AMQP 1.0 driver.
Proton's SASL implementation provides several different configuration
options, such as the permitted mechanism set and the configuration
file.  This patch adds support for configuring these items.

Change-Id: Icf59643a6d557e3d91947664afedd420c9522fd8
Closes-Bug: #1495969
2015-09-20 15:45:11 -04:00
OpenStack Proposal Bot
1243b36f20 Updated from global requirements
Change-Id: I39034156ac9cfba8a7011c82dfaed74dcb68b484
2015-09-17 12:16:04 +00:00
Jenkins
08e64b28bd Merge "Fix a few leaks in the AMQP 1.0 driver." 2015-09-17 10:47:00 +00:00
Jenkins
9afb9a30e8 Merge "Disable ACL if authentication cannot be performed." 2015-09-17 02:45:44 +00:00
Jenkins
a07c46dc8b Merge "Imported Translations from Zanata" 2015-09-17 01:29:18 +00:00
Jenkins
69113432b0 Merge "Updated from global requirements" 2015-09-17 01:29:00 +00:00
Kenneth Giusti
e3d99b2127 Fix a few leaks in the AMQP 1.0 driver.
Break any references that can form a cyclic reference.  Several of
proton's python classes define __del__ methods, so a cyclic reference
must be broken manually.

Change-Id: Icabc7abd01a02cb80c7eb4a0de682e90308459ef
Closes-Bug: #1496540
2015-09-16 16:47:12 -04:00
Kenneth Giusti
8cbf3c170d Disable ACL if authentication cannot be performed.
If the version of qpidd does not support setting the SASL service name
as required by AMQP 1.0, then authentication is not possible.

Change-Id: I74f2bb094fc0dbae0525ba535a60fe80661e89f2
Closes-Bug: #1496573
2015-09-16 16:33:58 -04:00
OpenStack Proposal Bot
a5e9cf2cf7 Imported Translations from Zanata
For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I2d949b626242ef2fec1554d816e3c631c041f813
2015-09-16 18:44:52 +00:00
Jenkins
bff2c802cf Merge "Merge remote-tracking branch 'origin/feature/zmq' into merge-branch" 2015-09-16 14:31:53 +00:00
Mehdi Abaakouk
5a98303eee Enhance start/stop concurrency race condition fix
We want to ensure start have really finish before the caller
use stop to not go into weird driver state.

Inteads of raise RuntimeError or just printing warning, we
now use a lock to protect the state change of the server.

So stop will just wait that the server finish to start before
stopping.

This also removes the need to start/stop the server from the
same thread just to fix the state consistency of drivers when
thread or eventlet executor is used.

Change-Id: Ia7346f6cc0bbe8631a2e3318c7031b34ab1ec510
2015-09-16 14:38:10 +02:00
Jenkins
6aa9276ef8 Merge "Extend logging in amqpdriver" 2015-09-16 12:05:44 +00:00
Davanum Srinivas
97892e656a Merge remote-tracking branch 'origin/feature/zmq' into merge-branch
Change-Id: If189d03131efc02045955508cef06fdd2ed590ee
2015-09-15 11:07:44 -04:00
OpenStack Proposal Bot
497fa1cf1d Updated from global requirements
Change-Id: I00c23abf41a69cb23fc5ef02c56ed5e3c8cb8701
2015-09-15 14:17:59 +00:00
Jenkins
c5b7ab6f1c Merge "Remove useless additional requirement file" 2015-09-15 13:42:35 +00:00
Yulia Portnova
a672218ea5 Extend logging in amqpdriver
Log message specific information (unique_id/msg_id etc) to make
debugging easier.
 
Log msg_type, exchange_type, unique_id, msg_id, exchange,
reply queue, topic before actual send;
Log unique_id, msg_id, reply queue before sending reply;
Log msg_id, unique_id and reply_q if needed when receive message.

Change-Id: I10d7d3eb6676ea60e5a932f5932e14bafa50532c
2015-09-15 11:32:50 +00:00
Mehdi Abaakouk
894db18563 Remove useless additional requirement file
amqp1 requirements doesn't need anymore to be in
a separate file.

Change-Id: If8de5bcac231052ebf93323bf3923ab942a0de17
2015-09-15 11:29:52 +02:00
Kenneth Giusti
4dbcfa6c96 Fix AMQP 1.0 functional and unit test failures
As a result of upgrading proton to 0.10, some behavioral changes have
triggerd failures in the gate.

This patch fixes a subprocess call and syntax error in the AMQP1.0 unit tests.

This patch also fixes the functional test setup script to correctly
configure olter versions of QPIDD.

Both these fixes are necessary to get the gate to pass.

Change-Id: I5ca8476999fc953688c76c302a59bedf70658c8b
Closes-Bug: #1494794
Closes-Bug: #1494918
2015-09-11 16:13:52 -04:00
OpenStack Proposal Bot
e9a1492b72 Imported Translations from Transifex
For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I0177db405b1fb3525a990106455a3d3e6f3222d2
2.5.0
2015-09-08 06:18:13 +00:00
Jenkins
88667c6159 Merge "Update path to subunit2html in post_test_hook" 2015-09-07 08:22:04 +00:00
Joshua Harlow
bc3ae7317a Update path to subunit2html in post_test_hook
Per:

http://lists.openstack.org/pipermail/openstack-dev/2015-August/072982.html

The location of subunit2html changed on the images in the gate
so update the path used in the post_test_hook.

Change-Id: I7f87e6a18af6f4ac088ff2bf5f0a19e1aa55297e
2015-09-03 10:51:51 -07:00