From 51780031ea41212cad15fe6053d2bbfe11db5365 Mon Sep 17 00:00:00 2001 From: hsiegeln <37154749+hsiegeln@users.noreply.github.com> Date: Wed, 1 Apr 2026 22:11:54 +0200 Subject: [PATCH] fix: use alias in ORDER BY for processor metrics query ClickHouse rejects countMerge() in ORDER BY after GROUP BY because the column is already finalized to UInt64. Use the SELECT alias instead. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../cameleer3/server/app/controller/RouteMetricsController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cameleer3-server-app/src/main/java/com/cameleer3/server/app/controller/RouteMetricsController.java b/cameleer3-server-app/src/main/java/com/cameleer3/server/app/controller/RouteMetricsController.java index 36cf513d..08dd677c 100644 --- a/cameleer3-server-app/src/main/java/com/cameleer3/server/app/controller/RouteMetricsController.java +++ b/cameleer3-server-app/src/main/java/com/cameleer3/server/app/controller/RouteMetricsController.java @@ -164,7 +164,7 @@ public class RouteMetricsController { sql.append(" AND application_id = " + lit(appId)); } sql.append(" GROUP BY processor_id, processor_type, route_id, application_id"); - sql.append(" ORDER BY countMerge(total_count) DESC"); + sql.append(" ORDER BY total_count DESC"); List metrics = jdbc.query(sql.toString(), (rs, rowNum) -> { long totalCount = rs.getLong("total_count");