Description
Context:
There are several cases in which a report may yield too many result buckets, which would exceed the ES bucket limit of 10.000. Many of those we cannot predict, however in some cases we can: For example, a user might groupBy a String variable with > 10.000 distinct values, or choose a small unit for groupBy date Variable resulting in >10k filters in the aggregation. These cases would currently lead to an ES exception. It would be better to check how many buckets/datapoints a report will have before evaluating and triggering the bucket limit exception to be thrown, so that we can display a nicer warning in the report instead. A similar solution is already implemented for `groupByDate` (see DateHistogramBucketLimiterUtil.limitFiltersToMaxBucketsForGroupByUnit)
TODO: evaluate which other report cases need to be covered for this scenario
AT:
- A warning is shown whenever we know that the required aggregation would exceed the ES bucket limit/ the aggregation is limited to prevent exceeding the bucket limit
mgm-controller-panel
This is the controller panel for Smart Panels app
Attachments
1.
|
Warning/limit result when date var aggregation exceeds bucket limit | Done | Unassigned | |
2.
|
Warning/limit result when number var aggregation exceeds bucket limit | Done | Unassigned | |
3.
|
Warning/limit result when string var aggregation exceeds bucket limit | Done | Unassigned | |
4.
|
Warning/limit result when running date report exceeds bucket limit | Done | Unassigned |