You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@curator.apache.org by ra...@apache.org on 2017/07/10 19:41:03 UTC
[1/4] curator git commit: removed asyncDefault() it was a dumb idea
anyway. Also, fixed one of the tests now that the root node isn't cached
Repository: curator
Updated Branches:
refs/heads/master 12cc7cec5 -> 3b9d60626
removed asyncDefault() it was a dumb idea anyway. Also, fixed one of the tests now that the root node isn't cached
Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/46e5462f
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/46e5462f
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/46e5462f
Branch: refs/heads/master
Commit: 46e5462fb3a5217a2e3077d8e99a0e1b81330f78
Parents: 0f5d10d
Author: randgalt <ra...@apache.org>
Authored: Sun Jul 9 18:07:20 2017 -0500
Committer: randgalt <ra...@apache.org>
Committed: Sun Jul 9 18:07:20 2017 -0500
----------------------------------------------------------------------
.../modeled/cached/CachedModeledFramework.java | 10 ---
.../details/CachedModeledFrameworkImpl.java | 22 ++----
.../modeled/TestCachedModeledFramework.java | 75 +-------------------
3 files changed, 9 insertions(+), 98 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/curator/blob/46e5462f/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
----------------------------------------------------------------------
diff --git a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
index 8acbebb..6cda3aa 100644
--- a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
+++ b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
@@ -37,16 +37,6 @@ public interface CachedModeledFramework<T> extends ModeledFramework<T>, Closeabl
ModeledCache<T> cache();
/**
- * Returns a view of this instance that uses the CachedModeledFramework's executor
- * for all default async completion operations. i.e. when you use, for example,
- * {@link java.util.concurrent.CompletionStage#handleAsync(java.util.function.BiFunction)}
- * this instance's executor is used instead of <code>ForkJoinPool.commonPool()</code>.
- *
- * @return view
- */
- CachedModeledFramework<T> asyncDefault();
-
- /**
* Start the internally created cache
*/
void start();
http://git-wip-us.apache.org/repos/asf/curator/blob/46e5462f/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
----------------------------------------------------------------------
diff --git a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
index 2a7fd5f..f701ab3 100644
--- a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
+++ b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
@@ -48,19 +48,17 @@ class CachedModeledFrameworkImpl<T> implements CachedModeledFramework<T>
private final ModeledFramework<T> client;
private final ModeledCacheImpl<T> cache;
private final Executor executor;
- private final boolean asyncDefaultMode;
CachedModeledFrameworkImpl(ModeledFramework<T> client, ExecutorService executor)
{
- this(client, new ModeledCacheImpl<>(client.unwrap().unwrap(), client.modelSpec(), executor), executor, false);
+ this(client, new ModeledCacheImpl<>(client.unwrap().unwrap(), client.modelSpec(), executor), executor);
}
- private CachedModeledFrameworkImpl(ModeledFramework<T> client, ModeledCacheImpl<T> cache, Executor executor, boolean asyncDefaultMode)
+ private CachedModeledFrameworkImpl(ModeledFramework<T> client, ModeledCacheImpl<T> cache, Executor executor)
{
this.client = client;
this.cache = cache;
this.executor = executor;
- this.asyncDefaultMode = asyncDefaultMode;
}
@Override
@@ -70,12 +68,6 @@ class CachedModeledFrameworkImpl<T> implements CachedModeledFramework<T>
}
@Override
- public CachedModeledFramework<T> asyncDefault()
- {
- return new CachedModeledFrameworkImpl<>(client, cache, executor, true);
- }
-
- @Override
public void start()
{
cache.start();
@@ -126,7 +118,7 @@ class CachedModeledFrameworkImpl<T> implements CachedModeledFramework<T>
@Override
public CachedModeledFramework<T> child(Object child)
{
- return new CachedModeledFrameworkImpl<>(client.child(child), cache, executor, asyncDefaultMode);
+ return new CachedModeledFrameworkImpl<>(client.child(child), cache, executor);
}
@Override
@@ -138,7 +130,7 @@ class CachedModeledFrameworkImpl<T> implements CachedModeledFramework<T>
@Override
public CachedModeledFramework<T> withPath(ZPath path)
{
- return new CachedModeledFrameworkImpl<>(client.withPath(path), cache, executor, asyncDefaultMode);
+ return new CachedModeledFrameworkImpl<>(client.withPath(path), cache, executor);
}
@Override
@@ -215,7 +207,7 @@ class CachedModeledFrameworkImpl<T> implements CachedModeledFramework<T>
.stream()
.map(ZNode::model)
.collect(Collectors.toList());
- return asyncDefaultMode ? ModelStage.asyncCompleted(children, executor) : ModelStage.completed(children);
+ return ModelStage.completed(children);
}
@Override
@@ -323,13 +315,13 @@ class CachedModeledFrameworkImpl<T> implements CachedModeledFramework<T>
private <U> AsyncStage<U> completed(U value)
{
- return asyncDefaultMode ? ModelStage.asyncCompleted(value, executor) : ModelStage.completed(value);
+ return ModelStage.completed(value);
}
private <U> AsyncStage<U> exceptionally()
{
KeeperException.NoNodeException exception = new KeeperException.NoNodeException(client.modelSpec().path().fullPath());
- return asyncDefaultMode ? ModelStage.asyncExceptionally(exception, executor) : ModelStage.exceptionally(exception);
+ return ModelStage.exceptionally(exception);
}
private <U> AsyncStage<U> internalRead(Function<ZNode<T>, U> resolver, Supplier<AsyncStage<U>> elseProc)
http://git-wip-us.apache.org/repos/asf/curator/blob/46e5462f/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
----------------------------------------------------------------------
diff --git a/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java b/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
index 49821e2..80c1f8b 100644
--- a/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
+++ b/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
@@ -28,82 +28,11 @@ import org.testng.annotations.Test;
import java.io.IOException;
import java.math.BigInteger;
import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
import java.util.concurrent.Semaphore;
-import java.util.concurrent.atomic.AtomicReference;
public class TestCachedModeledFramework extends TestModeledFrameworkBase
{
@Test
- public void testThreading()
- {
- TestModel model = new TestModel("a", "b", "c", 1, BigInteger.ONE);
- CachedModeledFramework<TestModel> client = ModeledFramework.wrap(async, modelSpec).cached().asyncDefault();
-
- CountDownLatch latch = new CountDownLatch(1);
- client.listenable().addListener((type, path1, stat, model1) -> latch.countDown());
-
- complete(client.set(model));
- client.start();
- try
- {
- Assert.assertTrue(new Timing().awaitLatch(latch));
-
- AtomicReference<Thread> completionThread = new AtomicReference<>();
- complete(client.read().whenCompleteAsync((s, e) -> completionThread.set((e == null) ? Thread.currentThread() : null)));
- Assert.assertNotNull(completionThread.get());
- Assert.assertNotEquals(Thread.currentThread(), completionThread.get(), "Should be different threads");
- completionThread.set(null);
-
- complete(client.child("foo").read().whenCompleteAsync((v, e) -> completionThread.set((e != null) ? Thread.currentThread() : null)));
- Assert.assertNotNull(completionThread.get());
- Assert.assertNotEquals(Thread.currentThread(), completionThread.get(), "Should be different threads");
- completionThread.set(null);
- }
- finally
- {
- client.close();
- }
- }
-
- @Test
- public void testCustomThreading()
- {
- AtomicReference<Thread> ourThread = new AtomicReference<>();
- ExecutorService executor = Executors.newSingleThreadExecutor(r -> {
- Thread thread = new Thread(r, "testCustomThreading");
- ourThread.set(thread);
- return thread;
- });
- TestModel model = new TestModel("a", "b", "c", 1, BigInteger.ONE);
- CachedModeledFramework<TestModel> client = ModeledFramework.wrap(async, modelSpec).cached(executor).asyncDefault();
-
- CountDownLatch latch = new CountDownLatch(1);
- client.listenable().addListener((type, path1, stat, model1) -> latch.countDown());
-
- complete(client.set(model));
- client.start();
- try
- {
- Assert.assertTrue(new Timing().awaitLatch(latch));
-
- AtomicReference<Thread> completionThread = new AtomicReference<>();
- complete(client.read().thenAcceptAsync(s -> completionThread.set(Thread.currentThread())));
- Assert.assertEquals(ourThread.get(), completionThread.get(), "Should be our thread");
- completionThread.set(null);
-
- complete(client.child("foo").read().whenCompleteAsync((v, e) -> completionThread.set((e != null) ? Thread.currentThread() : null)));
- Assert.assertEquals(ourThread.get(), completionThread.get(), "Should be our thread");
- completionThread.set(null);
- }
- finally
- {
- client.close();
- }
- }
-
- @Test
public void testDownServer() throws IOException
{
Timing timing = new Timing();
@@ -116,7 +45,7 @@ public class TestCachedModeledFramework extends TestModeledFrameworkBase
client.start();
try
{
- client.set(model);
+ client.child(model).set(model);
Assert.assertTrue(timing.acquireSemaphore(semaphore));
CountDownLatch latch = new CountDownLatch(1);
@@ -129,7 +58,7 @@ public class TestCachedModeledFramework extends TestModeledFrameworkBase
server.stop();
Assert.assertTrue(timing.awaitLatch(latch));
- complete(client.read().whenComplete((value, e) -> {
+ complete(client.child(model).read().whenComplete((value, e) -> {
Assert.assertNotNull(value);
Assert.assertNull(e);
}));
[3/4] curator git commit: Must use timing for ttls so that Jenkins
can have appropriate values
Posted by ra...@apache.org.
Must use timing for ttls so that Jenkins can have appropriate values
Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/4ad1fb8e
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/4ad1fb8e
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/4ad1fb8e
Branch: refs/heads/master
Commit: 4ad1fb8e5867648e311200edbba773b203c546ad
Parents: 1b2598d
Author: randgalt <ra...@apache.org>
Authored: Mon Jul 10 14:40:20 2017 -0500
Committer: randgalt <ra...@apache.org>
Committed: Mon Jul 10 14:40:20 2017 -0500
----------------------------------------------------------------------
.../recipes/nodes/TestPersistentTtlNode.java | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/curator/blob/4ad1fb8e/curator-recipes/src/test/java/org/apache/curator/framework/recipes/nodes/TestPersistentTtlNode.java
----------------------------------------------------------------------
diff --git a/curator-recipes/src/test/java/org/apache/curator/framework/recipes/nodes/TestPersistentTtlNode.java b/curator-recipes/src/test/java/org/apache/curator/framework/recipes/nodes/TestPersistentTtlNode.java
index 43f5cc0..573a867 100644
--- a/curator-recipes/src/test/java/org/apache/curator/framework/recipes/nodes/TestPersistentTtlNode.java
+++ b/curator-recipes/src/test/java/org/apache/curator/framework/recipes/nodes/TestPersistentTtlNode.java
@@ -39,6 +39,7 @@ import static org.apache.curator.framework.recipes.cache.PathChildrenCache.Start
public class TestPersistentTtlNode extends BaseClassForTests
{
private final Timing timing = new Timing();
+ private final long ttlMs = timing.multiple(.10).milliseconds(); // a small number
@BeforeMethod
@Override
@@ -63,14 +64,14 @@ public class TestPersistentTtlNode extends BaseClassForTests
{
client.start();
- try (PersistentTtlNode node = new PersistentTtlNode(client, "/test", 100, new byte[0]))
+ try (PersistentTtlNode node = new PersistentTtlNode(client, "/test", ttlMs, new byte[0]))
{
node.start();
Assert.assertTrue(node.waitForInitialCreate(timing.session(), TimeUnit.MILLISECONDS));
- for ( int i = 0; i < 10; ++i )
+ for ( int i = 0; i < 5; ++i )
{
- Thread.sleep(110); // sleep a bit more than the TTL
+ Thread.sleep(ttlMs + (ttlMs / 2)); // sleep a bit more than the TTL
Assert.assertNotNull(client.checkExists().forPath("/test"));
}
}
@@ -88,14 +89,14 @@ public class TestPersistentTtlNode extends BaseClassForTests
{
client.start();
- try (PersistentTtlNode node = new PersistentTtlNode(client, "/test", 10, new byte[0]))
+ try (PersistentTtlNode node = new PersistentTtlNode(client, "/test", ttlMs, new byte[0]))
{
node.start();
Assert.assertTrue(node.waitForInitialCreate(timing.session(), TimeUnit.MILLISECONDS));
- for ( int i = 0; i < 10; ++i )
+ for ( int i = 0; i < 5; ++i )
{
- Thread.sleep(10);
+ Thread.sleep(ttlMs);
client.delete().quietly().forPath(ZKPaths.makePath("test", PersistentTtlNode.DEFAULT_CHILD_NODE_NAME));
}
@@ -112,7 +113,7 @@ public class TestPersistentTtlNode extends BaseClassForTests
{
client.start();
- try (PersistentTtlNode node = new PersistentTtlNode(client, "/test", 10, new byte[0]))
+ try (PersistentTtlNode node = new PersistentTtlNode(client, "/test", ttlMs, new byte[0]))
{
try(PathChildrenCache cache = new PathChildrenCache(client, "/", true))
{
[4/4] curator git commit: Merge branch 'master' into CURATOR-419
Posted by ra...@apache.org.
Merge branch 'master' into CURATOR-419
Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/3b9d6062
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/3b9d6062
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/3b9d6062
Branch: refs/heads/master
Commit: 3b9d60626bd5f469dbe0be37a4f952ed2f7dd15e
Parents: 4ad1fb8 12cc7ce
Author: randgalt <ra...@apache.org>
Authored: Mon Jul 10 14:40:48 2017 -0500
Committer: randgalt <ra...@apache.org>
Committed: Mon Jul 10 14:40:48 2017 -0500
----------------------------------------------------------------------
.../framework/recipes/shared/SharedCount.java | 5 +
.../framework/recipes/shared/SharedValue.java | 28 ++++-
.../recipes/shared/TestSharedCount.java | 117 ++++++++++++++++++-
3 files changed, 148 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
[2/4] curator git commit: Enabled must use custom serializer now
Posted by ra...@apache.org.
Enabled must use custom serializer now
Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/1b2598d3
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/1b2598d3
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/1b2598d3
Branch: refs/heads/master
Commit: 1b2598d389b9e38182f99cd89e8c8cf1445c155a
Parents: 46e5462
Author: randgalt <ra...@apache.org>
Authored: Mon Jul 10 10:15:49 2017 -0500
Committer: randgalt <ra...@apache.org>
Committed: Mon Jul 10 10:15:49 2017 -0500
----------------------------------------------------------------------
.../apache/curator/x/discovery/details/TestServiceProvider.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/curator/blob/1b2598d3/curator-x-discovery/src/test/java/org/apache/curator/x/discovery/details/TestServiceProvider.java
----------------------------------------------------------------------
diff --git a/curator-x-discovery/src/test/java/org/apache/curator/x/discovery/details/TestServiceProvider.java b/curator-x-discovery/src/test/java/org/apache/curator/x/discovery/details/TestServiceProvider.java
index fae7266..d7358fe 100644
--- a/curator-x-discovery/src/test/java/org/apache/curator/x/discovery/details/TestServiceProvider.java
+++ b/curator-x-discovery/src/test/java/org/apache/curator/x/discovery/details/TestServiceProvider.java
@@ -85,7 +85,8 @@ public class TestServiceProvider extends BaseClassForTests
client.start();
ServiceInstance<String> instance = ServiceInstance.<String>builder().payload("thing").name("test").port(10064).enabled(false).build();
- ServiceDiscovery<String> discovery = ServiceDiscoveryBuilder.builder(String.class).basePath("/test").client(client).thisInstance(instance).build();
+ InstanceSerializer<String> serializer = new JsonInstanceSerializer<>(String.class, false);
+ ServiceDiscovery<String> discovery = ServiceDiscoveryBuilder.builder(String.class).serializer(serializer).basePath("/test").client(client).thisInstance(instance).build();
closeables.add(discovery);
discovery.start();