Thanks Vlad. That explains the problem. That also explains how adding sleep of 3seconds work.
Jason, is this exception fatal?. Will the message be processed again after the handler is added. thanks, Kishore G On Sun, Feb 15, 2015 at 6:41 PM, [email protected] <[email protected]> wrote: > https://issues.apache.org/jira/browse/HELIX-548 > On Feb 15, 2015 6:38 PM, "kishore g" <[email protected]> wrote: > > > Hi Vlad, > > > > Was there any jira associated with it? > > > > thanks. > > Kishore G > > > > On Sun, Feb 15, 2015 at 4:36 PM, [email protected] <[email protected]> > > wrote: > > > >> Looks like the same problem we encountered recently. > >> > >> Regards, > >> Vlad > >> On Feb 15, 2015 4:35 PM, "kishore g" <[email protected]> wrote: > >> > >> > Steph described this problem on IRC. > >> > > >> > He is using 0.7.1. On connecting to cluster he gets this NPE > >> > > >> > http://pastebin.com/YE3fwK5i > >> > > >> > java.lang.NullPointerException > >> > at > >> > > >> > org.apache.helix.messaging.handling.HelixTaskExecutor.createMessageHandler(HelixTaskExecutor.java:661) > >> > at > >> > > >> > org.apache.helix.messaging.handling.HelixTaskExecutor.onMessage(HelixTaskExecutor.java:581) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkCallbackHandler.invoke(ZkCallbackHandler.java:202) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkCallbackHandler.init(ZkCallbackHandler.java:336) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkCallbackHandler.<init>(ZkCallbackHandler.java:130) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkHelixConnection.addListener(ZkHelixConnection.java:533) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkHelixConnection.addMessageListener(ZkHelixConnection.java:267) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkHelixParticipant.setupMsgHandler(ZkHelixParticipant.java:347) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkHelixParticipant.init(ZkHelixParticipant.java:383) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkHelixParticipant.onConnected(ZkHelixParticipant.java:401) > >> > at > >> > > >> > org.apache.helix.manager.zk.ZkHelixParticipant.start(ZkHelixParticipant.java:428) > >> > at > >> > > >> > com.example.ProtostuffServerNode.spinUpParticipant(ProtostuffServerNode.java:134) > >> > > >> > > >> > Here is his connection code. > >> > > >> > http://pastebin.com/QRfVU1tc > >> > > >> > private static HelixParticipant spinUpParticipant(HelixAdmin admin, > >> > ParticipantId participantId) { > >> > LOGGER.info("Starting up "+participantId); > >> > HelixConnection connection = new ZkHelixConnection( > >> > ZK_ADDRESS); > >> > connection.connect(); > >> > HelixParticipant participant = connection. > >> > createParticipant(CLUSTER_ID, participantId); > >> > StateMachineEngine stateMach = participant. > >> > getStateMachineEngine(); > >> > > >> > StateTransitionHandlerFactory<LocalTransitionHandler> > >> > transitionHandlerFactory = new OnlineOfflineHandlerFactory(); > >> > stateMach.registerStateModelFactory(STATE_MODEL_NAME, > >> > transitionHandlerFactory); > >> > participant.start(); > >> > > >> > admin.enableInstance(CLUSTER_NAME, > >> participantId.toString( > >> > ), true); > >> > > >> > return participant; > >> > } > >> > > >> > Adding 3s sleep after registerStateModelFactory works. Any idea what > is > >> > happening. > >> > > >> > thanks, > >> > Kishore G > >> > > >> > > >> > > >> > > >> > > > > >
