You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Chamikara Jayalath (JIRA)" <ji...@apache.org> on 2017/08/01 23:13:00 UTC

[jira] [Created] (BEAM-2711) ByteKeyRangeTracker.getFractionConsumed() fails when out of range positions are claimed

Chamikara Jayalath created BEAM-2711:
----------------------------------------

             Summary: ByteKeyRangeTracker.getFractionConsumed() fails when out of range positions are claimed
                 Key: BEAM-2711
                 URL: https://issues.apache.org/jira/browse/BEAM-2711
             Project: Beam
          Issue Type: Bug
          Components: sdk-java-core
            Reporter: Chamikara Jayalath


ByteKeyRangeTracker.getFractionConsumed() invokes range.estimateFractionForKey(position) at following location.
https://github.com/apache/beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/io/range/ByteKeyRangeTracker.java#L127

This invocation fails for out of range positions.
https://github.com/apache/beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/io/range/ByteKeyRange.java#L170

But ByteKeyRangeTracker may accept out of range positions at following location.
https://github.com/apache/beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/io/range/ByteKeyRangeTracker.java#L80

We can fix this by updating ByteKeyRangeTracker.getFractionConsumed() to return 1.0 for positions that are larger than the stop position, similar to OffsetRangeTracker.
https://github.com/apache/beam/blob/master/sdks/java/core/src/main/java/org/apache/beam/sdk/io/range/OffsetRangeTracker.java#L176



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)