diff --git a/query-service-impl/src/main/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverter.java b/query-service-impl/src/main/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverter.java index 36f0b59c..76eef51f 100644 --- a/query-service-impl/src/main/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverter.java +++ b/query-service-impl/src/main/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverter.java @@ -91,7 +91,7 @@ private String functionToStringForAvgRate( .getSeconds(); return String.format( - "SUM(%s / %s)", columnName, (double) aggregateIntervalInSeconds / rateIntervalInSeconds); + "SUM(%s) / %s", columnName, (double) aggregateIntervalInSeconds / rateIntervalInSeconds); } private String convertCount() { diff --git a/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/QueryRequestToPinotSQLConverterTest.java b/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/QueryRequestToPinotSQLConverterTest.java index b5836bb7..12173323 100644 --- a/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/QueryRequestToPinotSQLConverterTest.java +++ b/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/QueryRequestToPinotSQLConverterTest.java @@ -914,7 +914,7 @@ public void testQueryWithAverageRateInOrderBy() { + "' " + "and ( start_time_millis >= 1637297304041 and start_time_millis < 1637300904041 and service_id != 'null' ) " + "group by service_id, service_name " - + "order by SUM(error_count / 3600.0) " + + "order by SUM(error_count) / 3600.0 " + "limit 10000", viewDefinition, executionContext); diff --git a/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverterTest.java b/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverterTest.java index 63896ad6..dbf5ed5e 100644 --- a/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverterTest.java +++ b/query-service-impl/src/test/java/org/hypertrace/core/query/service/pinot/converters/PinotFunctionConverterTest.java @@ -211,7 +211,7 @@ void convertAvgRateFunction() { .thenReturn(Optional.of(Duration.ofSeconds(10))); assertEquals( - "SUM(foo / 2.0)", + "SUM(foo) / 2.0", new PinotFunctionConverter() .convert( mockingExecutionContext, @@ -223,7 +223,7 @@ void convertAvgRateFunction() { .thenReturn(Optional.of(Duration.ofSeconds(20))); assertEquals( - "SUM(foo / 4.0)", + "SUM(foo) / 4.0", new PinotFunctionConverter() .convert( mockingExecutionContext,