Skip to content
This repository was archived by the owner on Nov 11, 2022. It is now read-only.

Conversation

@tgroh
Copy link
Contributor

@tgroh tgroh commented May 12, 2016

Backports Beam #318 and #326

tgroh added 3 commits May 12, 2016 16:00
This fixes a TOCTOU race in the contents updating logic, where the
determination that the current pane should replace the contents of the
side input and the replacement is not a single atomic operation. Using
AtomicReference allows the use of compareAndSet to ensure that the
replacement can only occur on the pane that the decision to replace was
made with.

Fixes a race where a pane could be the latest, and replace a
pane, but would be lost due to an earlier pane being written between the
invalidation and loading of contents.

Fixes a race where a reader can incorrectly read an empty iterable as
the contents of a PCollectionView, due to occuring between the
invalidate and reload steps.
This ensures that while processing a bundle all elements see the same
contents for any SideInput Window.
@kennknowles kennknowles self-assigned this May 12, 2016
@kennknowles kennknowles merged commit bb70fd0 into GoogleCloudPlatform:master May 13, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants