Repository: incubator-apex-core Updated Branches: refs/heads/devel-3 90bda5e21 -> e6263b5cf
APEX-142 #resolve Buffer server permanently disables network reads when disk spooling is disabled. Project: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/commit/44d1bfc3 Tree: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/tree/44d1bfc3 Diff: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/diff/44d1bfc3 Branch: refs/heads/devel-3 Commit: 44d1bfc340b3bb90a513fe9c8a4aefe86dae8f29 Parents: 282c43b Author: Vlad Rozov <[email protected]> Authored: Sun Sep 20 13:17:51 2015 -0700 Committer: Vlad Rozov <[email protected]> Committed: Tue Sep 22 18:17:41 2015 -0700 ---------------------------------------------------------------------- bufferserver/pom.xml | 22 +++++++++----- .../bufferserver/internal/DataList.java | 6 ++-- .../bufferserver/client/SubscriberTest.java | 6 ++-- .../bufferserver/server/ServerTest.java | 12 +++++--- pom.xml | 32 +++++++++++--------- 5 files changed, 47 insertions(+), 31 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/44d1bfc3/bufferserver/pom.xml ---------------------------------------------------------------------- diff --git a/bufferserver/pom.xml b/bufferserver/pom.xml index ffd6ca3..c6f9eea 100644 --- a/bufferserver/pom.xml +++ b/bufferserver/pom.xml @@ -13,6 +13,21 @@ <name>Buffer Server</name> + <build> + <plugins> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <dependencies> + <dependency> + <groupId>org.apache.maven.surefire</groupId> + <artifactId>surefire-testng</artifactId> + <version>2.14.1</version> + </dependency> + </dependencies> + </plugin> + </plugins> + </build> + <dependencies> <dependency> <groupId>org.testng</groupId> @@ -21,11 +36,6 @@ <scope>test</scope> </dependency> <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>11.0.2</version> - </dependency> - <dependency> <groupId>com.datatorrent</groupId> <artifactId>dt-common</artifactId> <version>${project.version}</version> @@ -44,9 +54,7 @@ <build> <plugins> <plugin> - <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> - <version>2.11</version> <configuration> <suiteXmlFiles> <suiteXmlFile>target/nb-private/testng-suite.xml</suiteXmlFile> http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/44d1bfc3/bufferserver/src/main/java/com/datatorrent/bufferserver/internal/DataList.java ---------------------------------------------------------------------- diff --git a/bufferserver/src/main/java/com/datatorrent/bufferserver/internal/DataList.java b/bufferserver/src/main/java/com/datatorrent/bufferserver/internal/DataList.java index 6806168..d6642db 100644 --- a/bufferserver/src/main/java/com/datatorrent/bufferserver/internal/DataList.java +++ b/bufferserver/src/main/java/com/datatorrent/bufferserver/internal/DataList.java @@ -398,7 +398,7 @@ public class DataList public boolean isMemoryBlockAvailable() { - return numberOfInMemBlockPermits.get() > 0; + return (storage == null) || (numberOfInMemBlockPermits.get() > 0); } public byte[] newBuffer() @@ -733,7 +733,9 @@ public class DataList } } else if (wait && data == null) { try { - wait(); + synchronized (Block.this) { + wait(); + } } catch (InterruptedException ex) { throw new RuntimeException("Interrupted while waiting for data to be loaded!", ex); http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/44d1bfc3/bufferserver/src/test/java/com/datatorrent/bufferserver/client/SubscriberTest.java ---------------------------------------------------------------------- diff --git a/bufferserver/src/test/java/com/datatorrent/bufferserver/client/SubscriberTest.java b/bufferserver/src/test/java/com/datatorrent/bufferserver/client/SubscriberTest.java index cde4f69..53895eb 100644 --- a/bufferserver/src/test/java/com/datatorrent/bufferserver/client/SubscriberTest.java +++ b/bufferserver/src/test/java/com/datatorrent/bufferserver/client/SubscriberTest.java @@ -61,7 +61,7 @@ public class SubscriberTest eventloopServer.start(); eventloopClient.start(); - instance = new Server(0); + instance = new Server(0, 64, 2); address = instance.run(eventloopServer); assert (address instanceof InetSocketAddress); } @@ -74,7 +74,7 @@ public class SubscriberTest eventloopClient.stop(); } - @Test + @Test(timeOut = 1000) @SuppressWarnings("SleepWhileInLoop") public void test() throws InterruptedException { @@ -218,7 +218,7 @@ public class SubscriberTest eventloopClient.disconnect(bsp2); eventloopClient.disconnect(bss2); - Assert.assertTrue((bss2.lastPayload.getWindowId() - 8) * 3 < bss2.tupleCount.get()); + Assert.assertTrue((bss2.lastPayload.getWindowId() - 8) * 3 <= bss2.tupleCount.get()); } } http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/44d1bfc3/bufferserver/src/test/java/com/datatorrent/bufferserver/server/ServerTest.java ---------------------------------------------------------------------- diff --git a/bufferserver/src/test/java/com/datatorrent/bufferserver/server/ServerTest.java b/bufferserver/src/test/java/com/datatorrent/bufferserver/server/ServerTest.java index de26da8..568bdc9 100644 --- a/bufferserver/src/test/java/com/datatorrent/bufferserver/server/ServerTest.java +++ b/bufferserver/src/test/java/com/datatorrent/bufferserver/server/ServerTest.java @@ -105,7 +105,7 @@ public class ServerTest assertEquals(bss.tupleCount.get(), 0); } - @Test(dependsOnMethods = {"testNoPublishNoSubscribe"}) + @Test(dependsOnMethods = {"testNoPublishNoSubscribe"}, timeOut = 50) @SuppressWarnings("SleepWhileInLoop") public void test1Window() throws InterruptedException { @@ -128,12 +128,14 @@ public class ServerTest break; } } - Thread.sleep(10); + + while (bss.tupleCount.get() != 1) { + Thread.sleep(10); + } eventloopClient.disconnect(bss); eventloopClient.disconnect(bsp); - assertEquals(bss.tupleCount.get(), 1); Assert.assertFalse(bss.resetPayloads.isEmpty()); } @@ -315,7 +317,7 @@ public class ServerTest @Test(dependsOnMethods = {"testRepublish"}) @SuppressWarnings("SleepWhileInLoop") - public void testReblishLowerWindow() throws InterruptedException + public void testRepublishLowerWindow() throws InterruptedException { bsp = new Publisher("MyPublisher"); eventloopClient.connect(address.isUnresolved() ? new InetSocketAddress(address.getHostName(), address.getPort()) : address, bsp); @@ -365,7 +367,7 @@ public class ServerTest assertEquals(bss.tupleCount.get(), 8); } - @Test(dependsOnMethods = {"testReblishLowerWindow"}) + @Test(dependsOnMethods = {"testRepublishLowerWindow"}) @SuppressWarnings("SleepWhileInLoop") public void testReset() throws InterruptedException { http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/44d1bfc3/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index fc0983f..7cd11fd 100644 --- a/pom.xml +++ b/pom.xml @@ -116,20 +116,6 @@ </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> - <version>2.14.1</version> - <dependencies> - <dependency> - <groupId>org.apache.maven.surefire</groupId> - <artifactId>surefire-junit47</artifactId> - <version>2.14.1</version> - </dependency> - </dependencies> - <configuration> - <excludedGroups>${test.excludedGroups}</excludedGroups> - <systemPropertyVariables> - <java.io.tmpdir>${project.build.directory}</java.io.tmpdir> - </systemPropertyVariables> - </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> @@ -161,6 +147,24 @@ <pluginManagement> <plugins> <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.14.1</version> + <dependencies> + <dependency> + <groupId>org.apache.maven.surefire</groupId> + <artifactId>surefire-junit47</artifactId> + <version>2.14.1</version> + </dependency> + </dependencies> + <configuration> + <excludedGroups>${test.excludedGroups}</excludedGroups> + <systemPropertyVariables> + <java.io.tmpdir>${project.build.directory}</java.io.tmpdir> + </systemPropertyVariables> + </configuration> + </plugin> + <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>nbm-maven-plugin</artifactId> <version>3.8</version>
