I just had a Jenkins job time out when TestAsyncKuduSession java test took an hour: http://104.196.14.100/job/kudu-gerrit/3359/BUILD_TYPE=RELEASE/console
Looking at the test output http://104.196.14.100/job/kudu-gerrit/3359/BUILD_TYPE=RELEASE/artifact/java/kudu-client/target/surefire-reports/org.apache.kudu.client.TestAsyncKuduSession-output.txt , I see the following NPE after an unexpected disconnect: 00:50:11.056 [WARN - main] (AsyncKuduSession.java:334) unexpected tablet lookup failure for operation KuduRpc(method=Write, tablet=null, attempt=0, DeadlineTracker(timeout=0, elapsed=32), Deferred@1645276019(state=PENDING, result=null, callback=<none>, errback=<none>)) row_key=(int32 key=1) java.lang.NullPointerException at org.apache.kudu.client.AsyncKuduClient$RemoteTablet.addTabletClient(AsyncKuduClient.java:2089) at org.apache.kudu.client.AsyncKuduClient$RemoteTablet.refreshTabletClients(AsyncKuduClient.java:2049) at org.apache.kudu.client.AsyncKuduClient.discoverTablets(AsyncKuduClient.java:1404) at org.apache.kudu.client.AsyncKuduClient$MasterLookupCB.call(AsyncKuduClient.java:1317) at org.apache.kudu.client.AsyncKuduClient$MasterLookupCB.call(AsyncKuduClient.java:1297) at com.stumbleupon.async.Deferred.doCall(Deferred.java:1280) at com.stumbleupon.async.Deferred.addCallbacks(Deferred.java:685) at com.stumbleupon.async.Deferred.addCallback(Deferred.java:721) at org.apache.kudu.client.AsyncKuduClient.locateTablet(AsyncKuduClient.java:1106) at org.apache.kudu.client.AsyncKuduClient.loopLocateTable(AsyncKuduClient.java:1206) at org.apache.kudu.client.AsyncKuduClient.locateTable(AsyncKuduClient.java:1241) at org.apache.kudu.client.AsyncKuduClient.getTabletLocation(AsyncKuduClient.java:1450) at org.apache.kudu.client.AsyncKuduSession.apply(AsyncKuduSession.java:509) at org.apache.kudu.client.TestAsyncKuduSession.testInsertIntoUnavailableTablet(TestAsyncKuduSession.java:162) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) I'm guessing this is an artifact of d5082d8ec1218e3f3bd2143d117ddd64772a6162 which was committed Friday. David, since you committed that change, do you mind looking into this and decide if we should revert this patch for 1.0 so we have some more time to thoroughly test it? -Todd -- Todd Lipcon Software Engineer, Cloudera
