mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-26 09:50:40 +00:00
* test: add regression test for binary op on histogram_quantile (#8144) Signed-off-by: evenyag <realevenyag@gmail.com> * fix: preserve column qualifiers in HistogramFold output schema (#8144) Signed-off-by: evenyag <realevenyag@gmail.com> --------- Signed-off-by: evenyag <realevenyag@gmail.com>
51 lines
1.8 KiB
SQL
51 lines
1.8 KiB
SQL
-- Reproduce https://github.com/GreptimeTeam/greptimedb/issues/8144
|
|
-- Binary comparison/arithmetic applied to a histogram_quantile() result.
|
|
|
|
create table http_request_duration_seconds_bucket (
|
|
ts timestamp time index,
|
|
le string,
|
|
pod string,
|
|
val double,
|
|
primary key (pod, le),
|
|
);
|
|
|
|
insert into http_request_duration_seconds_bucket values
|
|
(2900000, "0.01", "pod-a", 10),
|
|
(2900000, "0.05", "pod-a", 20),
|
|
(2900000, "0.1", "pod-a", 30),
|
|
(2900000, "+Inf", "pod-a", 40),
|
|
(3000000, "0.01", "pod-a", 20),
|
|
(3000000, "0.05", "pod-a", 50),
|
|
(3000000, "0.1", "pod-a", 80),
|
|
(3000000, "+Inf", "pod-a", 100),
|
|
(2900000, "0.01", "pod-b", 5),
|
|
(2900000, "0.05", "pod-b", 8),
|
|
(2900000, "0.1", "pod-b", 12),
|
|
(2900000, "+Inf", "pod-b", 15),
|
|
(3000000, "0.01", "pod-b", 10),
|
|
(3000000, "0.05", "pod-b", 25),
|
|
(3000000, "0.1", "pod-b", 45),
|
|
(3000000, "+Inf", "pod-b", 60);
|
|
|
|
-- histogram_quantile alone
|
|
-- SQLNESS SORT_RESULT 3 1
|
|
tql eval (3000, 3000, '1s') histogram_quantile(0.5, sum by (le, pod) (rate(http_request_duration_seconds_bucket[5m])));
|
|
|
|
-- comparison filter
|
|
-- SQLNESS SORT_RESULT 3 1
|
|
tql eval (3000, 3000, '1s') histogram_quantile(0.5, sum by (le, pod) (rate(http_request_duration_seconds_bucket[5m]))) >= 0.02;
|
|
|
|
-- arithmetic
|
|
-- SQLNESS SORT_RESULT 3 1
|
|
tql eval (3000, 3000, '1s') histogram_quantile(0.5, sum by (le, pod) (rate(http_request_duration_seconds_bucket[5m]))) + 0;
|
|
|
|
-- bool modifier
|
|
-- SQLNESS SORT_RESULT 3 1
|
|
tql eval (3000, 3000, '1s') histogram_quantile(0.5, sum by (le, pod) (rate(http_request_duration_seconds_bucket[5m]))) >= bool 0.02;
|
|
|
|
-- subquery
|
|
-- SQLNESS SORT_RESULT 3 1
|
|
tql eval (3000, 3000, '1s') count_over_time((histogram_quantile(0.5, sum by (le, pod) (rate(http_request_duration_seconds_bucket[5m]))) >= 0.02)[10m:1m]);
|
|
|
|
drop table http_request_duration_seconds_bucket;
|