kaisun2000 commented on a change in pull request #974:
URL: https://github.com/apache/helix/pull/974#discussion_r425340619
##########
File path:
helix-core/src/main/java/org/apache/helix/manager/zk/CallbackHandler.java
##########
@@ -525,7 +526,7 @@ public void invoke(NotificationContext changeContext)
throws Exception {
private <T extends HelixProperty> List<T> preFetch(PropertyKey key) {
if (_preFetchEnabled) {
- return _accessor.getChildValues(key);
+ return _accessor.getChildValues(key, true);
Review comment:
Same question. Before this change, partial read would not terminate rest
flow, so onLiveInstance(), onMessage() etc would be called.
Now if exception thrown, this is not the case. This would
1/ result onLiveInstance() etc not called, but the exception got caught in
the ZkEvent thread.
2/ For Molly's change to add perodical checking messages PULL request, this
would break the time thread which calls onMessage(). Basically if the exception
thrown from onMessage() when timer thread calls this one, this would stop later
timer thread I believe. (We can test. I recall Java Concurrency Controller book
mentioned this issue there.) This would defeat the purpose of Molly's change.
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]