s0nskar commented on PR #3719:
URL: https://github.com/apache/celeborn/pull/3719#issuecomment-4659781549

   >Tag changes don't refresh on a re-register over a live entry. 
AbstractMetaManager.updateRegisterWorkerMeta uses workersMap.putIfAbsent(...), 
so a worker that re-registers while its entry still exists keeps the old 
WorkerInfo (old/empty tags). This is pre-existing behavior shared with disk 
info, not introduced here — but combined with this feature it means new 
celeborn.worker.tags only take effect after the stale entry is evicted 
(worker-lost), not on an immediate restart/re-register. Worth a doc note or 
follow-up.
   
   @SteNicholas What do you think about this? Should we update the tags in next 
heartbeat similar to disk infos. Or should we change the code slightly and 
update these values during re-registration itself.
   
   I think it will be cleaner if replace the existing entry with new entry and 
update it's reference in availableWorkers.
   
   ```
     synchronized (workersMap) {
         availableWorkers.remove(workerInfo);        // evict old entry which 
contains reference
         workersMap.put(workerInfo.toUniqueId(), workerInfo); 
         ...
         updateAvailableWorkers(workerInfo);         // re-adds new reference
     }
   ```


-- 
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