Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MapLoader misses state updates on second load on receiver nodes #7364

Closed
tombujok opened this issue Jan 19, 2016 · 1 comment

Comments

Projects
None yet
4 participants
@tombujok
Copy link
Contributor

commented Jan 19, 2016

The problem is that the MapKeyLoader tracks the state of the loading using a Future object.
On eager load that's followed by another load, let's say triggered by the loadAll call, the second's load state may/will be set on the same future object. According to the future's contract such call is ignored if the future has isDone() == true. The update happens in the MapKeyLoader.trackLoading method.
It doesn't play any role if the result is the same, but if not, this state update will be missed and may result in the client not being notified about a loading exception, etc.

@tombujok tombujok added this to the 3.6.1 milestone Jan 19, 2016

@enesakar enesakar modified the milestones: 3.6.1, 3.6.2 Feb 26, 2016

@mdogan mdogan modified the milestones: 3.6.2, 3.6.3 May 13, 2016

@jerrinot jerrinot modified the milestones: 3.6.4, 3.6.3 Jun 9, 2016

@tombujok tombujok modified the milestones: 3.7, 3.6.4 Jun 16, 2016

@tombujok tombujok modified the milestones: 3.8, 3.7 Jul 5, 2016

@tombujok tombujok self-assigned this Dec 19, 2016

@tombujok

This comment has been minimized.

Copy link
Contributor Author

commented Dec 20, 2016

Analysing it once more I came to the conclusion that it's normal that the state gets overwritten if the loading gets called a couple of times. It doesn't cause any harm.

@tombujok tombujok closed this Dec 20, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.