Stas Levin created BEAM-2789:
--------------------------------
Summary: Watermark can become unavailable for executors while it's
updated with new values
Key: BEAM-2789
URL: https://issues.apache.org/jira/browse/BEAM-2789
Project: Beam
Issue Type: Bug
Components: runner-spark
Affects Versions: 2.0.0, 2.1.0
Reporter: Stas Levin
Assignee: Amit Sela
The watermark is updated by the driver like so:
{code:java}
blockManager.removeBlock(WATERMARKS_BLOCK_ID, true);
blockManager.putSingle(WATERMARKS_BLOCK_ID, newValues,
StorageLevel.MEMORY_ONLY(),
true);
{code}
However, these operations are neither synchronous nor atomic, so if an executor
requests the watermark values before they are actually put but after they have
been removed, it may get a {{null}} as a response, which will make it default
to negative infinity as the watermark. This can result in an erroneous results.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)