[
https://issues.apache.org/jira/browse/BEAM-12103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17549246#comment-17549246
]
Danny McCormick commented on BEAM-12103:
----------------------------------------
This issue has been migrated to https://github.com/apache/beam/issues/20853
> HistogramCell needs a few touches to make it match the spec :)
> --------------------------------------------------------------
>
> Key: BEAM-12103
> URL: https://issues.apache.org/jira/browse/BEAM-12103
> Project: Beam
> Issue Type: Test
> Components: java-fn-execution
> Reporter: Alex Amato
> Priority: P3
>
> See spec here:
> __ [_https://s.apache.org/beam-histogram-metrics_]
> A few pieces I want to highlight:
> *// LINEAR(start, width, num_buckets):*
> *// Bi = start + width * i*
> *// e.g. LINEAR(5, 15, 6) defines:*
> *// [-INF, 5), [5, 20), [20, 35), [35, 50), [50, 65), [65, +INF],
> ...*
> Current Java implementation:
> LinearBuckets.of(5, 15, 6) will defined buckets like this (6 buckets
> excluding the infinite ranges)
> [-INF, 5), [5, 20), [20, 35), [35, 50), [50, 65), [65, 80), [80, 95), [95,
> +INF], ...
>
> Additionally, we should treat the infinite buckets like any other, i.e. as a
> counter in the array, rather than having separate variables for the -inf and
> inf buckets.:
> i.e. we can remove numTopRecords numBottomRecords
> public HistogramData(BucketType bucketType)
> { this.bucketType = bucketType; this.buckets = new
> long[bucketType.getNumBuckets()]; this.numOfRecords = 0; this.numTopRecords =
> 0; this.numBottomRecords = 0; }
>
> Additionally getCount() and incBucketCount() should use those same indexes
> i.e. for all these functions 0 means the -INF bucket, and length - 1 means
> the INF bucket
> This code is only used for one internal metric, so this we should change this
> before it gets adopted in other places.
>
--
This message was sent by Atlassian Jira
(v8.20.7#820007)