je-ik edited a comment on pull request #12551:
URL: https://github.com/apache/beam/pull/12551#issuecomment-673488800
Agree. Multiple different timers can indeed set the same output timestamps
(different in the sense that it is either completely different timer, or
different key). But - the assertion checks, that *there is not already set
timer with same name amd namespace*. That is - same timer for dame key. That
should be impossible, because the timer should be:
- either completely new (and so there cannot be any record for it), or
- updated, but then it should be cancelled first (and set back again as
new).
The fact that the precondtion fails demonstrates why this patch solves an
issue - in the original code, the output timestamp for the precisely same timer
would have been inserted twice in the priority queue, but later removed only
once (when updated or fired), thus leaving one output timestamp in priority
queue for even and block progress of pipeline for ever.
----------------------------------------------------------------
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]