lxorc commented on PR #13838:
URL: 
https://github.com/apache/dolphinscheduler/pull/13838#issuecomment-1491329287

   > > > We don't need to add this check, this case might be due to we 
registering an empty node? Could you please describe how to reproduce this.
   > > 
   > > 
   > > Yes, by default a `worker` node will be loaded in 
`registryClient.subscribe(REGISTRY_DOLPHINSCHEDULER_WORKERS, new 
WorkerDataListener()); `
   > > ```java
   > > registryClient.subscribe(REGISTRY_DOLPHINSCHEDULER_WORKERS, new 
WorkerDataListener()); 
   > > String[] parts = path.split("/");  // REGISTRY_DOLPHINSCHEDULER_WORKERS 
= /nodes/worker
   > > final String workerAddress = parts[parts.length - 1];  // workerAddress  
= worker
   > > if (type == Type.UPDATE) // the Type.UPDATE is  Node /nodes/worker 
update ,   case NODE_UPDATED: type(Type.UPDATE);
   > > syncSingleWorkerNodeInfo(workerAddress, JSONUtils.parseObject(data, 
WorkerHeartBeat.class));  //  ???
   > > workerNodeInfo.put(workerAddress, info);  // put "worker" key into the 
workerNodeInfo
   > > ```
   > > 
   > > 
   > >     
   > >       
   > >     
   > > 
   > >       
   > >     
   > > 
   > >     
   > >   
   > > The effect is that the `addr` of `getHostWeight` will be the `worker` 
and `heartBeat == null`.
   > > so
   > > ```java
   > >         if (heartBeat == null) {
   > >             logger.warn("worker {} in work group {} have not received 
the heartbeat", addr, workerGroup);
   > >             return Optional.empty();
   > >         }
   > > ```
   > 
   > So we only need to subscribe the event of 
REGISTRY_DOLPHINSCHEDULER_WORKERS's child path
   
   Please help to review my code to see if there are other problems. If there 
is a better implementation, please reply to me.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to