| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Brings the code-base back up to validating flake8 checks.
Closes #445
|
|\
| |
| | |
feat: drop Python 2.6/3.3 official support, add 3.5/3.6 testing
|
|/
|
|
| |
Closes #441
|
|\
| |
| | |
Release/2.3
|
| |\ |
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
chore: update MANIFEST.in to reflect changes to filenames
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Looks like the .rst files got converted to .md, but MANIFEST.in wasn't
updated. This also fixes the sdist, since setup.py expects README.md &
CONTRIBUTING.md to be in the source tarball.
closes #437
|
|\ \ \
| |/ /
|/| | |
chore: add travis deployment and update ZK versions
|
|/ /
| |
| |
| |
| |
| |
| | |
Add's automatic PyPI release based on tags. The versions of
Zookeeper are now the latest stable releases for 3.4.
Closes #436
|
|/ |
|
| |
|
|\
| |
| | |
fix deadlock in nonblocking semaphore acquiring
|
| |
| |
| |
| | |
every lock acquiring attempt
|
|\ \
| | |
| | | |
Always call _safe_close() on KazooClient.stop() so we don't leak work…
|
| | | |
|
|\ \ \
| | | |
| | | | |
Fix the client.add_auth hangs by xids mismatch.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This commit fixes https://github.com/python-zk/kazoo/issues/229 by throwing
the runtime exception into the dequeued async_result. It will end the waiting
of user threading.
But this commit doesn't fix the xids mismatch itself. The unordered xids may
caused by a bug from the ZooKeeper server side, such as the official issues
https://issues.apache.org/jira/browse/ZOOKEEPER-1863 described.
|
|\ \ \ \
| | | | |
| | | | | |
New recipe proposal: TreeCache
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
https://github.com/python-zk/kazoo/pull/398#discussion_r90782660
|
| | | | |
| | | | |
| | | | |
| | | | | |
https://github.com/python-zk/kazoo/pull/398#discussion_r90782555
|
| | | | | |
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
Counter: expose the previous and changed values.
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This commit extends the `Counter` API with the `pre_value` and
`post_value` attributes. These attributes are set when a counter
is changed. Previously, if the counter was modified concurrently,
it was not possible to access the exact value to which the counter
was set after a successful increment or decrement.
|
|\ \ \ \
| | | | |
| | | | | |
Convert readthedocs link for their .org -> .io migration for hosted projects
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:
> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.
Test Plan: Manually visited all the links I’ve modified.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Ensure pending watches are not dropped when connection is lost
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
- This behaviour matches the reference implementation in Zookeeper
- New EventType added: NONE
- Path defaults to None as in reference implementation
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Set default max_delay to one minute
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
construct empty exceptions with no arguments, instead of () and {}
|
| | | | | | | | |
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Fixed Queue to clear children before retry
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Fix potential leak in DataWatch and ChildrenWatch
|
| |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
If the func passed to DataWatcher or ChildrenWatch is bound to an object it
will keep a reference to the object around which could prevent it from getting
garbage collected.
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Remove code not needed when six is useable
|
| |/ / / / / / / / |
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Allow override cluster size plus observers
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
For many testing scenarios, it's convenient to have Observers
(specially with all the upcoming reconfig features in 3.5.0).
This is now possible by mixing two environment variables:
ZOOKEEPER_CLUSTER_SIZE: overrides the cluster's size
ZOOKEEPER_OBSERVER_START_ID: servers with ids >=, will be observers
For example, a cluster of size 5 with 3 participants and 2
observers could be build like this:
```
import os
from kazoo.testing.harness import get_global_cluster
os.environ["ZOOKEEPER_CLUSTER_SIZE"] = "5"
os.environ["ZOOKEEPER_OBSERVER_START_ID"] = "4"
get_global_cluster().start()
```
This works both with ZK 3.4 and >= 3.5.0.
Signed-off-by: Raul Gutierrez S <rgs@itevenworks.net>
|
| |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Signed-off-by: Raul Gutierrez S <rgs@itevenworks.net>
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Implement read-write (shared) lock from ZooKeeper recipe
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
The original lock code would set the watch on the last node which
preceded our node. This is efficient because if there are N
predecessors, then we would only set the watch on the latest and
would therefore only wake up and go through the loop after all
the predecessors had released their locks. The change to support
shared locks, however, set the watch on the first node which
preceded ours, meaning that we will wake up and iterate through
the loop for all N predecessor nodes.
This patch restores the original behavior where the watch was only
set on the immediate predecessor.
|
| | | | | | | | | | |
|