Netflix/curator — pull request #89 by Randgalt (2012-06-24 23:35:43+00:00)
Title: Package of changes

* New queue features: a) bounded queues: use setMaxItems() in the builder to set an (approx) upper
bound on the queue size; b) the builder now has an option to turn off background puts; c) queues now
default to flushing remaining puts when closed - this can be controlled in the builder via
finalFlushTime().

* Issue 82: Generalized (and deprecated) nonNamespaceView() by adding the usingNamespace() method
to allow getting a facade of the client that uses a specified namespace.

* createParentsIfNeeded() should now perform better. Instead of "pre" checking, it now only does the
check if KeeperException.NoNodeException is thrown. LockInternals now uses this method and, so, should
perform a bit better.

* Added a new utility: Reaper. This can be used to clean up parent lock nodes so that they don't
stay around as garbage. See the Utilities wiki for details: https://github.com/Netflix/curator/wiki/Utilities

* compressed() wasn't setting parents-create bool

* Some problems with recent namespace changes - null namespace wasn't being handled

* Unit tests should be a lot less noisy. A system property now turns off most internal error logging.

* Issue 88: Children processor should wait for all nodes to be processed before fetching more items

* There were some race conditions in the bounded version. To fix, factored out the querying of the parent node.