[
https://issues.apache.org/jira/browse/APEXCORE-413?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15236450#comment-15236450
]
ASF GitHub Bot commented on APEXCORE-413:
-----------------------------------------
Github user tweise commented on a diff in the pull request:
https://github.com/apache/incubator-apex-core/pull/301#discussion_r59312769
--- Diff:
engine/src/main/java/com/datatorrent/stram/stream/InlineStream.java ---
@@ -80,14 +88,29 @@ public void teardown()
public void put(Object tuple)
{
try {
- super.put(tuple);
+ reservoir.put(tuple);
+ if (!(tuple instanceof Tuple)) {
--- End diff --
What's the cost off adding the extra instanceof?
> Collision between Sink.getCount() and SweepableReservoir.getCount()
> -------------------------------------------------------------------
>
> Key: APEXCORE-413
> URL: https://issues.apache.org/jira/browse/APEXCORE-413
> Project: Apache Apex Core
> Issue Type: Bug
> Affects Versions: 3.2.0, 3.3.0
> Reporter: Vlad Rozov
> Assignee: Vlad Rozov
> Fix For: 3.4.0
>
>
> SweepableReservoir.getCount() and Sink.getCount() are two distinct counts as
> SweepableReservoir.getCount() returns number of tuples consumed/poll from the
> reservoir by an operator since the last reset, while Sink.getCount() returns
> number of tuples pushed into the sink since the last reset. For InlineStream
> that implements both interfaces, it causes a conflict as a count of tuples
> pushed into InlineStream is not necessarily equal to a count of tuples poll
> from it.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)