[ https://issues.apache.org/jira/browse/CURATOR-368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kezhu Wang closed CURATOR-368. ------------------------------ Resolution: Invalid I guess it is not an issue of Curator. > powermock will cause curator CONNECTIONLOSS exception > ----------------------------------------------------- > > Key: CURATOR-368 > URL: https://issues.apache.org/jira/browse/CURATOR-368 > Project: Apache Curator > Issue Type: Bug > Components: Framework > Environment: window & linux > jdk 1.7 > curator-framework 2.9.1 > curator-recipe 2.9.1 > curator-test 2.9.1 > junit 4.12 > powermock-module-junit4 1.6.1 > powermock-api-mockito 1.6.1 > Reporter: xsank mar > Priority: Minor > > client code > {code} > public class CuratorClient { > private CuratorFramework client; > public CuratorClient(String url) { > this.client = > CuratorFrameworkFactory.builder().connectString(url).namespace("test") > .retryPolicy(new RetryNTimes(3, 5000)) > .connectionTimeoutMs(3000).build(); > this.client.start(); > } > public void create(String path) { > try { > > this.client.create().creatingParentsIfNeeded().withMode(CreateMode.EPHEMERAL).forPath(path); > } catch (Exception e) { > e.printStackTrace(); > } > } > public void lsChildren(String path) { > try { > List<String> children = this.client.getChildren().forPath(path); > for (String child : children) { > System.out.println(child); > } > } catch (Exception e) { > e.printStackTrace(); > } > } > public void close() { > this.client.close(); > } > } > {code} > Test code > {code} > @RunWith(PowerMockRunner.class) > @PrepareForTest({Static.class}) > public class CuratorTest { > private CuratorClient client; > private TestingServer server; > @Before > public void setUp() throws Exception { > server = new TestingServer(); > server.start(); > client = new CuratorClient(server.getConnectString()); > } > @After > public void tearDown() throws Exception { > client.close(); > server.close(); > } > @Test > public void testCreate() throws Exception { > client.create("/curator"); > } > @Test > public void lsChildren() throws Exception { > client.lsChildren("/curator"); > } > } > {code} > now start testing, you will catch the exception everytime: > {code} > org.apache.curator.CuratorConnectionLossException: KeeperErrorCode = > ConnectionLoss > at > org.apache.curator.ConnectionState.checkTimeouts(ConnectionState.java:195) > at > org.apache.curator.ConnectionState.getZooKeeper(ConnectionState.java:87) > at > org.apache.curator.CuratorZookeeperClient.getZooKeeper(CuratorZookeeperClient.java:115) > at > org.apache.curator.framework.imps.CuratorFrameworkImpl.getZooKeeper(CuratorFrameworkImpl.java:487) > at > org.apache.curator.framework.imps.CreateBuilderImpl$11.call(CreateBuilderImpl.java:720) > at > org.apache.curator.framework.imps.CreateBuilderImpl$11.call(CreateBuilderImpl.java:703) > at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:107) > at > org.apache.curator.framework.imps.CreateBuilderImpl.pathInForeground(CreateBuilderImpl.java:699) > at > org.apache.curator.framework.imps.CreateBuilderImpl.protectedPathInForeground(CreateBuilderImpl.java:477) > at > org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:467) > at > org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:447) > at > org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:44) > at org.alibaba.search.client.CuratorClient.create(CuratorClient.java:25) > at org.alibaba.search.client.CuratorTest.testCreate(CuratorTest.java:35) > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)