docs: private void checkHistogramQuery() {
      if (!isHistogramQuery()) {
        return;
      }
  
      // only support NONE and SUM 
      if (agg != null && agg != Aggregators.NONE && agg != Aggregators.SUM) {
        throw new IllegalArgumentException("Only NONE or SUM aggregation function supported for histogram query");
      }
      
      // only support SUM in downsampling
      if (DownsamplingSpecification.NO_DOWNSAMPLER != downsample_specifier && 
          downsample_specifier.getHistogramAggregation() != HistogramAggregation.SUM) {
        throw new IllegalArgumentException("Only SUM downsampling aggregation supported for histogram query");
      }
      
      
      if (null != percentiles && percentiles.size() > 0) {
        for (Float parameter : percentiles) {
          if (parameter < 0 || parameter > 100) {
            throw new IllegalArgumentException("Invalid percentile parameters: " + parameter);
          }
        }
      }
    }