2184 Commits

Author SHA1 Message Date
Stephen Finucane
1251c0fef1 Use Sphinx 1.5 warning-is-error
With pbr 2.0 and Sphinx 1.5, the setting for treat sphinx warnings as
errors is setting warning-is-error in build_sphinx section. Migrate
the setting from the old warnerrors one.

The history document is removed because some of the commit messages used
in ChangeLog were being identified as invalid markup and there doesn't
appear to be anyway to edit there retroactively nor disable warnings on
a specific file.

Change-Id: I79e7ac56d5af1151865686761f3d40a11efbf472
2017-03-16 15:22:18 +00:00
Stephen Finucane
06c993d550 tox: Build docs with Python 2.7
The 'list-modules' directive used in some docs does not appear to be
Python 3 compatible, yielding the following error:

  TypeError: unorderable types: NoneType() < str()

Simply use Python 2.7 until such a time as someone wants to investigate
why this happens.

Change-Id: I0be19b056e1c2272df3666626fbd17ec78017bce
2017-03-16 15:14:31 +00:00
Jenkins
2ee6a2a480 Merge "Remove self.mox" 2017-03-07 10:24:34 +00:00
Jenkins
d28b5ddf0b Merge "Updated from global requirements" 2017-03-07 08:58:24 +00:00
OpenStack Proposal Bot
3fce2e0171 Updated from global requirements
Change-Id: Ia0139a39a0328725f57c1364fcd9c8bd4a1a5d0c
2017-03-07 05:51:52 +00:00
Brant Knudson
1fb3956f44 Remove self.mox
No tests use this property.

Change-Id: Ifa740e59207a87890bb100cc035ec6088ac03dca
2017-03-07 03:41:16 +00:00
ChangBo Guo(gcb)
8cbca30afd Move decorator updated_kwarg_default_value to right place
debtcollector's decorator updated_kwarg_default_value is used to indicate
default value will be changed in future version. We introduced parameter
access_policy and add itfor constructor method of RPCDispatcher in
d3a8f280ebd6fd12865fd20c4d772774e39aefa2. Other services usually call
get_rpc_server method instead of calling constructor method of
RPCDispatcher. get_rpc_server method constructs RPCDispatcher instance
in [1], then FutureWarning will be generated even we set parameter
access_policy explicitly. Need move the decorator updated_kwarg_default_value
to method get_rec_server to avoid the case.

Closes-Bug: #1661572

[1] f1efaf1b6e/oslo_messaging/rpc/server.py (L200).

Change-Id: I3214045856d0bbd05a0000eeafb769e4697cd34c
2017-03-07 03:39:30 +00:00
Jenkins
7f990bfe5f Merge "Remove mox3 from test-requirements.txt" 2017-03-07 03:33:06 +00:00
Jenkins
4f7198597e Merge "Allow checking if notifier is enabled" 2017-03-06 18:30:03 +00:00
Jenkins
370acf1e40 Merge "[Fix gate]Update test requirement" 2017-03-06 15:40:04 +00:00
Matt Riedemann
afd4ecfb42 Remove old messaging notify driver alias
15cd99050c6d2714b90059e0faad9f9e3409eaaa added this alias
to workaround an issue with neutron using the internal
path in liberty. That was fixed in neutron in mitaka:

225663888e71d44e9732951f515da925b8799b74

The alias was left for liberty, but liberty is end of life
now so we can remove this.

Change-Id: I145921b98d48e03df38ebcbaebc1a4375911f9ff
2017-03-05 17:33:21 -05:00
Jenkins
8d42484e6f Merge "Validate the transport url query string" 2017-03-04 18:21:09 +00:00
ricolin
84faac2040 [Fix gate]Update test requirement
Since pbr already landed and the old version of hacking seems not
work very well with pbr>=2, we should update it to match global
requirement.
Partial-Bug: #1668848

Change-Id: I29b64d2f8d6e3305d052562f160050fdd05c2a55
2017-03-04 14:10:30 +00:00
OpenStack Proposal Bot
7bfbac5621 Updated from global requirements
Change-Id: If91d1a8a4ff9a120704360705b81b0d4422cae10
2017-03-04 01:51:17 +00:00
Jenkins
fa579b2adb Merge "RabbitMQ: Standardize SSL parameter names" 2017-03-04 00:12:05 +00:00
Balazs Gibizer
ed149bae81 Allow checking if notifier is enabled
Generating the payload of a notificatiton might be expensive due
to database access. This expensive step is unnecessary if the
notification driver is set to noop because it means that the
generated payload will not be sent.

This patch makes it possible for the user of the notifier to check
if the notifier will emit any notification before the payload
is generated.

Cinder already implemented similar behavior in
I77f655d3ef90088ce71304da5d4ea7b543991e90 and nova also plans
to do it in I3e6741d59df49e1e58409314008c2ed609fdedc1

Change-Id: Ib992f5c20fef85224fb00823e1d8d9c6cff19bec
2017-03-03 17:47:52 +01:00
Jenkins
104c1da138 Merge "rabbit: make ack/requeue thread-safe" 2017-03-01 17:21:49 +00:00
Jenkins
6c3cbf8091 Merge "Fix releasenotes" 2017-03-01 12:43:12 +00:00
Jenkins
6ba32511cf Merge "drivers: use common.ConfigOptsProxy everywhere" 2017-02-28 01:01:33 +00:00
Juan Antonio Osorio Robles
0c369cbcf6 RabbitMQ: Standardize SSL parameter names
This makes the SSL-related parameters to be similar to the ones used by
the AMQP and pika drivers. This will enable easier configuration of
these parameters if the transport URL is used. And easier migration from
one driver to the other when needed.

Change-Id: Ic32b2cb253fa0dc43aad7226b24919b7e588faa9
2017-02-27 16:00:10 +00:00
gord chung
94c818dc98 drop topic keyword from Notifier
we marked it for removal >=5.0.0

Change-Id: I4634c082c2383569c4aa8a6d9a8a560de7e3c12f
2017-02-27 14:13:11 +00:00
Mehdi Abaakouk
037dee19ed Validate the transport url query string
When driver load we allow to override option unrelated to the driver and
to set option useless for the driver.

This change validates the query string when the driver load to report as
soon as possible invalid options. And allow to override only option
of the driver option group (ie: [oslo_messaging_<driver_name>].

Related-bug: #1666903

Change-Id: Iaf23f773279c10bf37d545883ada7c2f6a9ffbbf
2017-02-27 13:10:31 +01:00
Mehdi Abaakouk
58b026a2aa drivers: use common.ConfigOptsProxy everywhere
ConfigOptsProxy have been implemented only pika driver while
the oslo.messaging allow to pass the query string for all drivers.

This change fixes that.
Closes-Bug: #1666903
Closes-Bug: #1607889

Next step is to validate the query with ConfigOptsProxy, to
raise appropriate exception in case of mis-configuration.

Change-Id: I573334e774ccf33ecd27a85067045f3c6489ee89
2017-02-27 13:10:31 +01:00
Brant Knudson
41fa1ac649 Stop using oslotest.mockpatch
This module has been deprecated in favor of fixtures.MockPatch.

Change-Id: Id60c1a35cc1ec832da1a459b19c43020987d0769
2017-02-26 00:35:29 +00:00
Mehdi Abaakouk
f9cba9bd09 tests: don't run functional tests in parallel
kafka doesn't play well with //, each times a new partition/topic is
created, kafka rebalances things across brokers and messages are not
delivered at the expected time.

So this change disable the parallelizism for functional tests for kafka
only.

Change-Id: Ia497334efcd4685850ac1529a7fc38073dae7cd1
2017-02-23 10:59:00 +01:00
Mehdi Abaakouk
7e71ac821f rabbit: make ack/requeue thread-safe
ack/requeue messages are currently done in the
MessageHandlingServer._process_incoming().

But _process_incoming() in run by a futurist Executor.
That can be a threading or an eventlet executor.

With eventlet, we don't really share the socket between threads.

But with threading executor and expecialy ssl, this can't work, if you
write data with two different threads to the socket.

This change moves back the message ack/requeue to the polling threads
that handle the connection, instead of the threads we spawn for the
application.

Oslo Messaging now always use a connection in the same thread.

Change-Id: I5c0e6def6b34f4d195fb1f8dbb26eda0f21ff34e
2017-02-22 18:39:53 +01:00
Hanxi Liu
4cf269afee Fix releasenotes
Fix the unreleased page and remove reno pages extra symbols.

Change-Id: I291b18560a11a318577b61c15a3462dabb0eb366
2017-02-22 14:08:19 +08:00
Brant Knudson
7728afe175 Remove mox3 from test-requirements.txt
oslo.messaging does not import mox3 directly, it uses mox3 through
oslotest.

Change-Id: Iaae0b03d2c0511d12f1ab2c8e93622dfaa6c27ce
2017-02-21 13:49:07 -06:00
Jenkins
296d93d586 Merge "Fix the typo" 2017-02-20 20:09:48 +00:00
OpenStack Proposal Bot
3e727ea715 Updated from global requirements
Change-Id: I1a5882d3fe0189ab3e651155681a1410c37d8a82
2017-02-16 23:17:36 +00:00
Jenkins
a916fce706 Merge "support kombu4" 2017-02-16 02:26:08 +00:00
Jenkins
706cfde8d3 Merge "Test:Use unittest.mock on Python 3" 2017-02-16 01:37:24 +00:00
Jenkins
07486845eb Merge "Fix type of the kafka_consumer_timeout option" 2017-02-15 12:39:35 +00:00
Jenkins
bf966f6f1f Merge "[zmq] Dynamic connections send failure" 2017-02-14 17:41:20 +00:00
ozamiatin
6c7094a921 [zmq] Update configurations documentation
In this change new configurations appeared in Ocata release
like dynamic connections and other types of proxied deployments
being described.

Change-Id: Id6e9b062101d8916323edc143ea5379585192581
2017-02-14 12:41:21 +02:00
Pierre Riteau
aab5ea2dfd Fix type of the kafka_consumer_timeout option
Change-Id: Ibe7a72cef031e84221522183521f65c238a2d8e5
2017-02-13 09:45:02 +00:00
ozamiatin
4a1679450d [zmq] Dynamic connections send failure
For dynamic connections it is crucial to close connection
and not to have hanging sockets either we have sent message
successfully or not.

eventlet.green.zmq by default blocks the calling thread on sending message
when connection was not established yet (which is correct DEALER
socket behavior though), but socket cannot be closed when we hang on
sending forever (if we never get the valid host to connect).

eventlet also shields EAGAIN exception in default (blocking) sending mode
so we need to use async zmq.NOBLOCK flag to receive this exception
and hanlde it in our own way to not block forever.

Change-Id: Ib561e061c4b20644213c059a8e8d0efd225edea1
Closes-Bug: #1658913
Closes-Bug: #1663459
2017-02-11 05:25:53 +02:00
Jenkins
337f499c58 Merge "[zmq] Properly analyse use_dynamic_connections option" 2017-02-10 19:13:08 +00:00
gord chung
5bacea1f42 support kombu4
- kombu4 wraps recoverable errors as OperationalErrors rather than
raising amqp errors
- also, raise a recoverable error and redeclare if for some reason a
message is double acknowledged... previously, this was hidden.
- ensure socket is not none
- use connect method to ensure connection

Depends-On: I9f980b51901ac31599b9651633956ad2eea6a1ac
Change-Id: I73958c8057353a2eefe1baaa7a41148193d507f7
2017-02-10 13:21:22 +00:00
ChangBo Guo(gcb)
4f229832c0 Test:Use unittest.mock on Python 3
The mock module has been added to Python 3.3 as unittest.mock.
The third party mock module doesn't seem to be maintained anymore.
This is follow up of 72c501454ea33b603918de35565a66dda8abd66a and
add hacking rule to avoid regression issue.

oslotest prepares mock for six in oslotest/__init__.py as follow:
six.add_move(six.MovedModule('mock', 'mock', 'unittest.mock')) and
oslo_messaging/tests/__init__.py imports oslotest before importing
test submodules to setup six.moves for mock, then "from six.moves
import mock" works well.

Note: unittest.mock also detects wrong usage of method
assert_called_once_with.

Change-Id: I3d09733789cfa2550cf47c24f2553357d36bcc0d
2017-02-08 19:15:17 +08:00
Jenkins
f3cc165dba Merge "[zmq] Dummy add value aging mechanism" 2017-02-07 03:13:57 +00:00
Jenkins
3b5fb1968b Merge "pbr.version.VersionInfo needs package name (oslo.xyz and not oslo_xyz)" 2017-02-07 02:45:16 +00:00
chenxing
7e767256c3 Fix the typo
Change-Id: Ieebb6d30a0b9e237eac930fb19d40a686d972aa1
2017-02-07 02:39:25 +00:00
Jenkins
eca7e934a8 Merge "Update reno for stable/ocata" 2017-02-06 21:26:32 +00:00
Davanum Srinivas
f33bb02c82 pbr.version.VersionInfo needs package name (oslo.xyz and not oslo_xyz)
We need to pass into VersionInfo what one would expect from running:
 setup.py --name

 Right now we pass in say oslo_context and pbr fails if there is no .git in
  the python source tree

  Closes-Bug: #1662266

Change-Id: I45d2edddfd516f65e1589e9b7816f1256e3f0d24
2017-02-06 12:49:23 -05:00
ozamiatin
35744c88d3 [zmq] Properly analyse use_dynamic_connections option
Option use_dynamic_connections has to be counted when direct
publisher is being created along with proxy publisher (ZmqClientMixDirectPubSub).

Change-Id: If0d5674d7015b164095a437464d3c780db892e19
Closes-Bug: #1662134
2017-02-06 12:06:59 +02:00
lihong7313
407544a040 [zmq] Dummy add value aging mechanism
Dummy does not have value aging mechanisms and value
filtering mechanisms. Like redis, we should use these
two mechanisms

Change-Id: I58d73e6b15a601e9e95274d47e822ae54ef5f5ba
Closes-Bug: #1658940
2017-02-06 02:30:26 +00:00
Jenkins
35bf674364 Merge "kafka: skip multiple servers tests" 2017-01-31 20:22:09 +00:00
Jenkins
4ec746dfba Merge "kafka: ensure topics are created" 2017-01-31 20:21:55 +00:00
Jenkins
3b91f3d1cc Merge "kafka: fix python3 exception" 2017-01-28 11:06:33 +00:00