Github user dasahcc commented on a diff in the pull request: https://github.com/apache/helix/pull/169#discussion_r177527783 --- Diff: helix-core/src/main/java/org/apache/helix/common/caches/BasicClusterDataCache.java --- @@ -104,6 +108,52 @@ public void refresh(HelixDataAccessor accessor) { } } + /** + * Selective update Helix Cache by version + * @param accessor the HelixDataAccessor + * @param reloadKeys keys needs to be reload + * @param cachedKeys keys already exists in the cache + * @param cachedPropertyMap cached map of propertykey -> property object + * @param <T> the type of metadata + * @return + */ + public static <T extends HelixProperty> Map<PropertyKey, T> updateReloadProperties( + HelixDataAccessor accessor, List<PropertyKey> reloadKeys, List<PropertyKey> cachedKeys, --- End diff -- cachedkeys only contains the existing keys. Deleted node will be removed from it.
---