839 Commits

Author SHA1 Message Date
OpenStack Proposal Bot
11cdb8989a Imported Translations from Transifex
Change-Id: I929f28690f70149514777870d66f02b73001716f
2014-07-24 06:07:07 +00:00
Jenkins
b3f1b48d0f Merge "API v1.1 - Encapsulate message post bodies in a JSON object" 2014-07-24 02:21:35 +00:00
Jenkins
8ac9823b63 Merge "Remove check queue exists endpoint" 2014-07-24 00:54:07 +00:00
Jenkins
ae019cb35b Merge "Rename remaining 'shard' to 'pool'" 2014-07-23 22:31:16 +00:00
kgriffs
38c28a2de8 API v1.1 - Encapsulate message post bodies in a JSON object
This patch implements one of the breaking changes specified in
the API v1.1 spec, which requires clients to encapsulate the
list of messages to enqueue in a JSON object, when posting
those messages to the API.

Partially-Implements: blueprint api-v1.1-request-document-changes
Change-Id: I72ae87e1c479b6be6fbc8ce1fbaee89b2729e41a
2014-07-22 13:28:58 -05:00
Jenkins
79f0d2267b Merge "feat(v1.1): Default TTL and grace values" 2014-07-22 03:23:33 +00:00
Fei Long Wang
0fc10894af Rename remaining 'shard' to 'pool'
Rename remaining 'shard' to 'pool' to avoid any confusing.

Closes-Bug: 1346690

Change-Id: I3c889fd41187ae6a53a45fed26fb95da99f78dd8
2014-07-22 15:15:10 +12:00
OpenStack Proposal Bot
a56439a1b6 Updated from global requirements
Change-Id: I077f7da22e2e70e2c08fba9e09a395350fa9cdb5
2014-07-21 16:24:13 +00:00
kgriffs
354afebee2 feat(v1.1): Default TTL and grace values
When posting messages, the "ttl" field may be omitted, in which
case the server defaults to the default TTL value configured by
the operator.

Likewise, when creating a claim, the "ttl" and "grace" fields
may be omitted to use the defaults configured for each field.

Change-Id: I38c6307377293b26370de28ffa13db22228c208c
Partially-Implements: blueprint api-v1.1-request-document-changes
2014-07-18 17:42:26 -05:00
Malini Kamalambal
fe01a29583 Remove check queue exists endpoint
This patch removes the queue exists check from the transport layer.
Implements: blueprint api-v1.1-remove-check-queue-existence

Change-Id: I5fbd3089d552c22ab59a49a7fadc743cbb884770
2014-07-18 15:43:35 -04:00
OpenStack Proposal Bot
53f3fa6983 Imported Translations from Transifex
Change-Id: Ib9b8c39cbf43c117aa9e28bef86afd5d10745cb1
2014-07-17 06:07:15 +00:00
Jenkins
57842ef9b3 Merge "feat(benchmarking) : Producer-Consumer scenario" 2014-07-16 16:14:56 +00:00
Sriram Madapusi Vasudevan
4c950f99e4 feat(benchmarking) : Producer-Consumer scenario
This patch adds the ability to benchmark Marconi. The benchmark tool
is a console script, and can be triggered using

$ marconi-bench-pc

The Benchmark tool fires up both a Producer Process and a Consumer
Process, while accepting CLI parameters for the number of processes,
number of workers and duration of test.

The Producer Process publishes messages to a given queue, while the
Consumer consumes the messages by claiming and deleting them.

Setup:

Benchmark dependencies need to be pip installed:

 pip install -r bench-requirements.txt

Export an environment variable called MESSAGES_PATH and set it to the
path of messages.json in marconi/bench

Note: This allows benchmarking with different set of messages rather
than those specified in messages.json

Usage:

$ marconi-bench-pc -p {No. Processes} -w {No. Workers} -t {No. Seconds}

Example:

$ marconi-bench-pc -p 2 -w 2 -t 4

Partially Implements: blueprint basic-benchmarking
Change-Id: I57ebe853554199490adba8b2a091423f399b0565
2014-07-16 10:37:12 -04:00
Prashanth Raghu
0293fa3b57 Adding dependencies for redis support in marconi
Adding the py-redis dependancy to marconi to support
redis storage backend

Adding the dependencies only to test-requirements-*.txt
as database backend requirements will slowly be phased
out of requirements-*.txt

Change-Id: I25581965b3deea201d33a7b53a284294c15290c7
Partially-Implements: bp/redis-storage-driver
2014-07-16 09:41:35 +08:00
Malini Kamalambal
3a59f52d55 Implement POP in v1.1 API
This patch implements the pop functionality for v1.1 of the Marconi
API. The POP functionality is implemented as an optional parameter
in the delete messages using id params endpoint. This includes the
following validations,
1. pop & id params cannot be used together in the request.
2. 0 < pop value <= max_messages_per_claim_or_pop

docImpact
Change-Id: I63b22e57ed5ab398b81cde2d0284767e9704ec11
Implements: blueprint api-v1.1-pop-operation
2014-07-14 14:50:39 -04:00
Victoria Martínez de la Cruz
ddabc98a99 Drop pylint due to the huge amount of false positives
Given that pylint is raising a lot of false positives
and that we have alternative static code checkers,
we decided to remove pylint from the tox envlist.

This patch also fix some pylint true positives
and cleans up the disabled pylint tests in the codebase.

Change-Id: I6fb4b9b4c80af452796032736e39ef064b9bcd03
Closes-Bug: #1297994
2014-07-13 20:03:52 -03:00
Jenkins
3c805229ae Merge "Run storage unit tests in pooled context" 2014-07-12 01:02:52 +00:00
Jenkins
e848f0bedb Merge "Make storage/pooling reflect storage/base" 2014-07-12 01:02:05 +00:00
Jenkins
5edf296e6b Merge "Primary key for pool in catalogue table is unreasonable" 2014-07-11 20:24:12 +00:00
OpenStack Proposal Bot
eee466a54f Updated from global requirements
Change-Id: I1770c8f0a05e087889c4b573675f70cb7d1dd617
2014-07-11 10:49:29 -07:00
Nataliia Uvarova
dfed02207d Run storage unit tests in pooled context
Enable storage unit tests for pooled context. This patch adds check for
pooling in test config in test initialization and creates appropriate
wrappers.

Also changes to sqlalchemy pooling controllers were made: in pooled
context project cannot be None due to constraint in database.

Change-Id: I59a663cef5b761e9470b8870d07cea03f5dac98b
2014-07-11 19:01:13 +03:00
Jenkins
51a98ce627 Merge "Start scratching Queue Flavors api" 2014-07-10 15:56:39 +00:00
Nataliia Uvarova
b3274e3857 Make storage/pooling reflect storage/base
Controllers wrappers for pooled context wasn't fully compatible with the
APIs defined in storage/base. Order of parameters was different and
default values was not specified or specified incorrectly.  In
particular in pooled setup default limits were None in message and claim
controllers.  This commit changes them to be the same as in non-pooled
setup.

Also tests for testing default limits were added.

Change-Id: I2b83383975986179813df7a897d78852a532564e
Closes-bug: #1324587
2014-07-10 18:07:23 +03:00
Jenkins
e7fe73db2b Merge "Changing default type for pooling Catalog storage driver" 2014-07-10 13:25:45 +00:00
Jenkins
994adf90f8 Merge "Switch over oslo.i18n" 2014-07-09 15:34:48 +00:00
Flavio Percoco
ef9d5247e9 Switch over oslo.i18n
oslo.i18n has recently been released. This patch switches marconi over
oslo.i18n. As per oslo.i18n's instructions, a new i18n module has been
added under marconi. This module defines the translation globals and
imports the necessary functions from oslo.i18n.

The patch doesn't change the way Marconi does translation, this means
that a `_` function is still being injected to the builtins.

Note that the gettextutils module is still a required module from
oslo-inc because there are oslo-inc modules that depend on the old
gettextutils module.

Closes-bug: #1314300

Change-Id: Ifb8f3296d1a0e2483ebd1c8d868b7359ecc99fb5
2014-07-09 15:39:54 +02:00
Fei Long Wang
6e49663f7a Primary key for pool in catalogue table is unreasonable
Based on current implement of sqlalchemy driver, we're setting
primary key for pool, but unfortunately, it's incorrect, because
user will definately put many queues for one pool. This fix will
remove the primary key for pool and imporve the unit test to
cover it.

Closes-Bug: 1338907

Change-Id: I20b4176e96760356dfd23211d7170c074db8254b
2014-07-09 14:30:53 +12:00
Jenkins
8c6b80e2fc Merge "Wrong param order when using errors.QueueNotMapped" 2014-07-08 16:14:41 +00:00
Jenkins
ef6e2b4383 Merge "limit=0 in sqlalchemy means 0 instead of unlimited" 2014-07-08 15:43:26 +00:00
Flavio Percoco
e4a2757145 Fix typos
Change-Id: Ifd975f2cb5729b03470a4061dc8de8cf226508db
2014-07-08 15:48:26 +02:00
Flavio Percoco
d30fcc61eb Clean up queues created for certain tests
Some tests weren't cleaning the queues they created. This caused other
tests to fail because of they ran on a no clean database. The patch adds
cleanup calls that will delete those queues once the test ends.

Change-Id: Iac354c34e14783a4b9773c60efbf719c21a9f9d2
2014-07-08 15:48:26 +02:00
Flavio Percoco
c088959432 Use the class queue_name and project for tests
Marker's test used a local queue_name instead of the one defined in the
base class. This caused some tests to fail because the ran on a no clean
database.

The patch makes the test use the queue_name and the project defined in
the class.

Change-Id: I5a1682e835a07a452eb1114da8c87369fe2f48b4
2014-07-08 15:48:22 +02:00
Fei Long Wang
b02e9c1089 limit=0 in sqlalchemy means 0 instead of unlimited
We're using limit=0 to query unlimited records. Unfornuately,
it doesn't work when a sql based database is used as pool
management database. In sqlalchemy, it means 0. This patch
will check if the limit is 0 to decide if applying the
limit() query for sqlalchemy.

Closes-Bug: 1337191

Change-Id: Iefc07ac41b17f52f7aa6607b0eb83dbc4cdef088
2014-07-08 16:51:03 +12:00
Noorul Islam K M
0975fed2c2 Fix broken wiki link
Change-Id: If5211d371e2379472d4c1f32def929c3dd70582a
2014-07-04 10:28:33 +05:30
Fei Long Wang
8217ec55d4 Wrong param order when using errors.QueueNotMapped
Now all of the calling for errors.QueueNotMapped are using
the wrong parapemters order, this patch will fix it and
improve the unit test to cover that.

Closes-Bug: 1336141

Change-Id: Id6cc52862465535ef5c1c06649a0ac8bf3485386
2014-07-01 16:59:00 +12:00
Prashanth Raghu
c8e81fb859 Changing default type for pooling Catalog storage driver
Changing the default pooling catalog storage type
from IntOpt to StrOpt

Change-Id: I7c0bb4d05da781ea03ca43e9acfcf42d74a75f08
2014-06-30 18:33:51 +08:00
pengfei wang
c5106bc26b Add None checking for the Mongodb uri
Change-Id: I9163c772d773ebecc51a88dc2280e8dba8ede009
Closes-Bug: #1334750
2014-06-28 17:48:13 +08:00
Flavio Percoco
39a3668e58 Start scratching Queue Flavors api
This patch adds the base API for queue flavors to the storage layer. The
API follows pretty much the leads of other APIs and supports basic
operations that allow users to create, delete, update and retrieve queue
flavors.

Partially-Implements blueprint: marconi-queue-flavors

Change-Id: I0666331ec983b138e324d42bf832d20e0dbfe877
2014-06-27 10:43:39 +02:00
Jenkins
c0e7c6ad9a Merge "Remove alphabetical sorting assumption in tests" 2014-06-25 14:30:32 +00:00
Jenkins
4dfb4e95d7 Merge "V1.1 Functional Tests" 2014-06-24 22:02:11 +00:00
Jenkins
bfce4313c3 Merge "Updated from global requirements" 2014-06-24 20:44:02 +00:00
abettadapur
c1715c6fb1 V1.1 Functional Tests
Added tests for new V1.1 functions like pop and shard
Updated existing tests for V1.1 return calls
Added new json schemas
Edited functional test base to support multiple schemas
Change-Id: I35dfb92af22540609ecb50c1eb5c8fa65e6cadc8
Partially-Implements blueprint: api-v1.1-functional-tests
2014-06-24 16:10:15 -04:00
Jenkins
40f1f20dc8 Merge "Fix two caching-related comments in the code" 2014-06-24 14:55:42 +00:00
OpenStack Proposal Bot
737db0b992 Updated from global requirements
Change-Id: I856f68f93251881aab1690dc337b697c211f99fa
2014-06-24 07:21:29 +00:00
pengfei wang
d69bfbfbad Remove alphabetical sorting assumption in tests
PoolsControllerTest.test_listing_simple assumes the alphabetical
sorting order which is changed to lexicographical sorting order.

Change-Id: I4e484eb3ecbf785a4f4b3a6cbae6e05d4703b254
Closes-Bug: #1254158
2014-06-24 14:48:55 +08:00
pengfei wang
1060dd8745 Rename shard to pool
Most of the work done in https://review.openstack.org/#/c/96463/
and here are for those left.

Change-Id: I9249747557b0784982f2fe75c1f13fd866a16616
Closes-Bug: #1333152
2014-06-24 14:19:37 +08:00
Jenkins
005bf960ab Merge "Expose pymongo's SSL cert options" 2014-06-24 02:46:08 +00:00
Jenkins
eb94fcc216 Merge "Correct the rtype in the function docstrings" 2014-06-23 21:14:59 +00:00
Jenkins
6051b284fb Merge "Sync with oslo-incubator" 2014-06-23 18:31:49 +00:00
kgriffs
6646cc3106 Fix two caching-related comments in the code
This patch updates a couple caching-related comments that were
inaccurate or ambiguous.

See also: https://review.openstack.org/#/c/67978

Change-Id: I4772568ff91a7a72f2633a0b4fe45d4f11a2c5da
2014-06-23 12:48:25 -05:00