Hello, I’m trying to create my own simple HelloWorld in Twill. The run method for the runnable is the following:
@Override public void run() { System.err.println("Starting No-Op notification task: " + new Date()); try { Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } System.err.println("Ending No-Op notification task: " + new Date()); } The client has the following main: public static void main(String[] args) { String zkStr = args[0]; YarnConfiguration yarnConfiguration = new YarnConfiguration(); TwillRunnerService runner = new YarnTwillRunnerService(yarnConfiguration, zkStr); runner.start(); TwillController controller = runner.prepare(new NotificationRunnable()) .addLogHandler(new PrinterLogHandler(new PrintWriter(System.out))) .start(); Runtime.getRuntime().addShutdownHook(new Thread() { @Override public void run() { try { Futures.getUnchecked(controller.terminate()); } finally { runner.stop(); } } }); try { controller.awaitTerminated(); } catch (ExecutionException e) { e.printStackTrace(); } } I’m running the application from a shaded jar on my cluster (I’ve tried running it using both the BundledJarRunner and directly). The application is getting accepted by Yarn and appears to run, but I’m not seeing my output and I’m seeing the following stacktrace in the logs for the container that my runnable is running in. Any suggestions? Exception in thread "CompositeService STOPPING" java.lang.RuntimeException: java.util.concurrent.ExecutionException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /TimerRunnable/discoverable at com.google.common.base.Throwables.propagate(Throwables.java:160) at com.google.common.util.concurrent.AbstractIdleService$1$2.run(AbstractIdleService.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.util.concurrent.ExecutionException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /TimerRunnable/discoverable at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:294) at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:267) at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:96) at org.apache.twill.internal.appmaster.ApplicationMasterMain$AppMasterTwillZKPathService.shutDown(ApplicationMasterMain.java:262) at com.google.common.util.concurrent.AbstractIdleService$1$2.run(AbstractIdleService.java:57) ... 1 more Caused by: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /TimerRunnable/discoverable at org.apache.zookeeper.KeeperException.create(KeeperException.java:111) at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) at org.apache.twill.internal.zookeeper.DefaultZKClientService$Callbacks$4.processResult(DefaultZKClientService.java:619) at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:590) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:495) Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.twill.launcher.TwillLauncher.main(TwillLauncher.java:89) Caused by: com.google.common.util.concurrent.UncheckedExecutionException: java.util.concurrent.ExecutionException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /TimerRunnable/discoverable at com.google.common.util.concurrent.Futures.wrapAndThrowUnchecked(Futures.java:1015) at com.google.common.util.concurrent.Futures.getUnchecked(Futures.java:1001) at com.google.common.util.concurrent.AbstractService.stopAndWait(AbstractService.java:225) at com.google.common.util.concurrent.AbstractIdleService.stopAndWait(AbstractIdleService.java:122) at org.apache.twill.internal.ServiceMain.doMain(ServiceMain.java:108) at org.apache.twill.internal.appmaster.ApplicationMasterMain.main(ApplicationMasterMain.java:85) ... 5 more Caused by: java.util.concurrent.ExecutionException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /TimerRunnable/discoverable at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:294) at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:267) at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:96) at org.apache.twill.internal.appmaster.ApplicationMasterMain$AppMasterTwillZKPathService.shutDown(ApplicationMasterMain.java:262) at com.google.common.util.concurrent.AbstractIdleService$1$2.run(AbstractIdleService.java:57) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /TimerRunnable/discoverable at org.apache.zookeeper.KeeperException.create(KeeperException.java:111) at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) at org.apache.twill.internal.zookeeper.DefaultZKClientService$Callbacks$4.processResult(DefaultZKClientService.java:619) at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:590) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:495) Caleb A. Meier, Ph.D. Software Engineer II ♦ Analyst Parsons Corporation 1911 N. Fort Myer Drive, Suite 800 ♦ Arlington, VA 22209 Office: (703)797-3066 caleb.me...@parsons.com<mailto:caleb.me...@parsons.com> ♦ www.parsons.com<https://webportal.parsons.com/,DanaInfo=www.parsons.com+>