325 Commits

Author SHA1 Message Date
Jenkins
b604b41a7e Merge "Remove tooz/openstack as it is empty and not used" 2015-07-02 14:23:02 +00:00
Jenkins
0db3080cdd Merge "Fix sp 'seonds' -> 'seconds'" 2015-07-02 14:22:55 +00:00
Jenkins
d6f7325fdf Merge "Ensure run_watchers called from mixin, not base class" 2015-07-02 03:13:19 +00:00
Joshua Harlow
60f228d9ac Remove tooz/openstack as it is empty and not used
Change-Id: I16b0871fb28189498743c313bda4473d5f30a407
2015-07-01 18:50:08 -07:00
Joshua Harlow
432b02701f Fix sp 'seonds' -> 'seconds'
Change-Id: Ieb84a7edd65ee8d3126ac2b70d55528ff7e87d49
2015-07-01 18:49:09 -07:00
Adam Gandelman
f9cd68f8d0 Ensure run_watchers called from mixin, not base class
A new mixin was introduced to share run_watchers across drivers,
but the base class's run_watchers() currently gets called instead,
resulting in a NotImplemented error.

Change-Id: I5f23f63100a9c00837025b291cb1db0a5187a8e9
Closes-bug: #1470264
2015-07-01 17:09:23 -07:00
OpenStack Proposal Bot
5ab78903b4 Updated from global requirements
Change-Id: I958d48bd6644f17ca80f80dd9fd59d0f5287f0d3
2015-06-30 20:04:31 +00:00
Jenkins
89895e7c6d Merge "Remove 2.6 classifier" 0.17.0 2015-06-27 05:31:34 +00:00
Jenkins
5f2dd42c81 Merge "Share most of the run_watchers code via a common mixin" 2015-06-24 11:32:16 +00:00
Kiall Mac Innes
03dbde52c1 Ensure unwatch_elected_as_leader correctly clears hooks
The default unwatch_elected_as_leader implementation had
a typo preventing the method from suceeding.

Change-Id: Ib49cbd6558499ff8cd074bf8f2c9a26782a2146c
Closes-Bug: 1467907
2015-06-23 12:59:39 +01:00
Jenkins
3361ef1473 Merge "Ensure lock(s) acquire/release returns boolean values" 2015-06-23 10:25:23 +00:00
OpenStack Proposal Bot
d819758e7d Updated from global requirements
Change-Id: Id0402bfb5d81856a2c72a0abfef16d58449ddc02
2015-06-22 21:55:02 +00:00
OpenStack Proposal Bot
c6e75071e7 Updated from global requirements
Change-Id: Icad28c2b80bd8a68b1a4d679b9194dee41824434
2015-06-22 08:29:01 +00:00
Joshua Harlow
32cdf82769 Ensure lock(s) acquire/release returns boolean values
Some of the returns were missing, so to ensure that the
interface is consistent ensure that we always return true
or false as needed, and add tests to ensure this keeps on
being maintained.

Change-Id: I877111c3a1d1d300881625c5900d4a825c5f1684
2015-06-19 12:44:16 -07:00
Joshua Harlow
61e86b0e40 Share most of the run_watchers code via a common mixin
Change-Id: Ib8e1398c05635d0c698c03760c1bbb547a0747ae
2015-06-19 11:59:51 -07:00
Jenkins
ae289f1f97 Merge "Remove file-driver special no-async abilities" 2015-06-19 05:04:59 +00:00
Joshua Harlow
1731f8eb18 Remove 2.6 classifier
Depends-On: I02e3c9aacef0b295a2f823a5cbaf11768a90cb82

Change-Id: Iaf0c38345735f90ba3a81439c9819fd6ee282951
2015-06-18 15:51:19 -07:00
Joshua Harlow
c43590a44f Remove file-driver special no-async abilities
To enable a following commit to unify the `run_watchers` of
the various drivers we need to make the file driver method
look more like the other drivers, which means removing the
special no-async ability and having it use the standard get
a future and wait on it to return (and repeat).

Change-Id: I14d227a0e6a80da80eb2580b1780ae1dba128b21
2015-06-17 09:21:07 -07:00
Joshua Harlow
1f73fb6b58 Delay interpolating the LOG string
If the log level isn't even enabled, we can avoid interpolating
the formatted string completly, so choose to do that by default.

Change-Id: Ibf2253b859a9196a0f4cebd78b565fedf5199832
2015-06-17 09:05:14 -07:00
Jenkins
5b13275d42 Merge "Use the 'driver_lock' around read operations" 2015-06-17 09:37:35 +00:00
Jenkins
551b66c6f1 Merge "Use the excutils.raise_with_cause after doing our type check" 2015-06-17 09:37:33 +00:00
Joshua Harlow
72524b3f6e Use encodeutils.exception_to_unicode for exception -> string function
Change-Id: Icc4939029d48ee18552fd38265e175082cd27851
2015-06-16 17:02:09 -07:00
Joshua Harlow
7207ae674d Use the excutils.raise_with_cause after doing our type check
Change-Id: I93bb687f60d1a046ad6d350e1f93f4115488ee40
2015-06-16 15:39:28 -07:00
OpenStack Proposal Bot
80d8847428 Updated from global requirements
Change-Id: I414e4175a95f25fc4bf7624c1ae7b58324badba2
2015-06-16 19:24:06 +00:00
Joshua Harlow
991202f6d4 Use the 'driver_lock' around read operations
To ensure that a file/group/folder is not being
removed while a read is underway (and therefore causing
corrupted msgpack reads) place the driver lock decorator
on the read methods to avoid this rare but possible
occurrence.

Change-Id: Ie2c53bd030aced77282cf575fd1024632e65348f
2015-06-16 11:28:27 -07:00
Jenkins
92a0235b0e Merge "Switch badges from 'pypip.in' to 'shields.io'" 2015-06-15 19:21:09 +00:00
OpenStack Proposal Bot
97ef501cf6 Updated from global requirements
Change-Id: I6d631e360384e63df9fbc037954133daa762a115
2015-06-15 03:13:32 +00:00
Jenkins
e6b2f037eb Merge "Add watch file driver support" 2015-06-12 07:43:11 +00:00
Jenkins
db07d766a8 Merge "Make the file driver more capable (with regard to groups)" 2015-06-12 07:40:20 +00:00
Joshua Harlow
b74d70968f Switch badges from 'pypip.in' to 'shields.io'
The badge hosting at 'pypip.in' has been broken for a while
now, it was supposed to be fixed in the following PR(s):

- https://github.com/badges/pypipins/issues/39
- https://github.com/badges/pypipins/issues/38
- https://github.com/badges/pypipins/issues/37

That does not appear to have actually happened and/or is not
getting addressed, so switch to a more reliable badge hosting
site that provides the same badge information.

Change-Id: I2c7ccc4885dcaaf5b3fa83c61ccbdc3097d42816
2015-06-11 20:44:26 -07:00
OpenStack Proposal Bot
fe266b0c83 Updated from global requirements
Change-Id: Iac5dcda1e39e80ab052bd94da8297898a9cca025
2015-06-11 00:49:14 +00:00
Jenkins
605d7f7453 Merge "Implement watch/unwatch elected_as_leader for redis driver" 2015-06-09 10:24:12 +00:00
Joshua Harlow
8f810b15bb Add watch file driver support
Also uses the nested temp dir support to ensure
that the temporary directory used for tests isn't
always the same (and therefore causing the file
driver tests to have problems).

Change-Id: I1b1acace086148e7930319e23cb5777c78adce6a
2015-06-09 03:44:58 +00:00
Joshua Harlow
3a38bc960c Make the file driver more capable (with regard to groups)
Adds the following to the file driver:

- join_group
- leave_group
- create_group
- get_members
- get_member_capabilities
- delete_group
- get_groups

Currently no watching (or leadership usage) is implemented
but it should be relatively simple to add at a later date.

Change-Id: I4fa73f43c5c9dde2b0e28693d1fecea8f6a0d3de
2015-06-08 20:42:19 -07:00
Joshua Harlow
e44b35dc48 Ensure locks can not be created outside of the root file driver directory
Change-Id: I33870e03141b4a577415bbc7d625237b1d86b513
2015-06-05 15:28:46 -07:00
Jenkins
c727093e01 Merge "Use MySQL default port when not set explicitly" 2015-06-04 08:35:33 +00:00
OpenStack Proposal Bot
bab4406720 Updated from global requirements
Change-Id: I5cc33b0e4d6deb5d49654e8961d3e7f12b2a3221
2015-06-03 17:21:34 +00:00
Kobi Samoray
07a77f02ed Use MySQL default port when not set explicitly
When a port number is not set explicitly in the connect URL to MySQL,
use MySQL default port number 3306

Change-Id: I3a7b50e7b8da00872960051b726e4b08ad9eacd6
2015-06-03 18:28:24 +03:00
Jenkins
39ba1da5fc Merge "Use fasteners library for interprocess locks" 2015-06-03 13:42:36 +00:00
Joshua Harlow
e678f4c1b3 Use fasteners library for interprocess locks
This library provides the interprocess lock code
shared by oslo.concurrency, taskflow, and tooz, so
we can just use it instead of having something similar.

Change-Id: Ie6dc318b2c1fc86605bb48f6909df7f1aa6a216f
2015-06-02 16:11:13 +00:00
Joshua Harlow
ec519f4861 Implement watch/unwatch elected_as_leader for redis driver
Change-Id: Idd5143801cfe0e095f31c04e9268887605268b62
2015-06-01 16:23:52 -07:00
OpenStack Proposal Bot
736cf677e3 Updated from global requirements
Change-Id: Id7a487cc489955c83e09fdca2361fdb98a538589
2015-05-29 16:43:34 +00:00
Jenkins
ba5740a3b0 Merge "Use lua locks instead of pipeline locks" 2015-05-28 08:58:43 +00:00
Joshua Harlow
80f9d57791 Use lua locks instead of pipeline locks
Lua locks are less prone to retries (and client side
flapping) so instead of using pipelines and retries on
those pipelines just use the simpler (and guaranteed
server-side atomic) lua based locks instead.

Change-Id: I3a03e040b56fd9ac97b7e5d00463ec961c81084a
2015-05-27 15:06:35 +00:00
Joshua Harlow
473e90ff6a Move more string constants to class constants with docstrings
Change-Id: I18187adf38a6f0e233eacbff790658b42906428b
2015-05-27 15:06:09 +00:00
OpenStack Proposal Bot
f16972d423 Updated from global requirements
Change-Id: Ic6ec2d573bc1bf79c7aa6796f7a53b04251a610f
2015-05-27 01:14:18 +00:00
OpenStack Proposal Bot
184c0193dc Updated from global requirements
Change-Id: I61e5dbc266b8c10ca76b6348480e99d922c12263
2015-05-11 15:52:53 +00:00
Joshua Harlow
3d5fc42e57 Remove support for redis < 2.6.0
To enable lua (and eval) usage to be accessible we
need to bump the min version to 2.6 (which should be
available on all distros that openstack is running
on).

This does that version bump and removes the code that
was handling and checking older versions (and the
differences/lack of APIs).

Change-Id: Ie8cd99d55e1907bb545b6692834b03871d9c1f83
2015-05-07 14:26:24 -07:00
Jenkins
e3191c285b Merge "Expose Zookeeper client class constants" 2015-05-07 09:52:34 +00:00
Jenkins
c75ca7d0a7 Merge "Explicitly start and execute most transactions" 2015-05-06 18:45:58 +00:00