Files
greptimedb/tests/cases/distributed/flow-tql/flow_eval_interval_schedule.sql
discord9 d3cc1b1888 feat(flow): stabilize eval interval scheduling (#8360)
* feat(flow): stabilize eval interval scheduling

Signed-off-by: discord9 <discord9@163.com>

* fix(flow): satisfy eval schedule clippy

Signed-off-by: discord9 <discord9@163.com>

* test(flow): trim eval schedule coverage

Signed-off-by: discord9 <discord9@163.com>

* test(flow): cover stable eval scheduling

Signed-off-by: discord9 <discord9@163.com>

* fix(flow): reserve scheduled runtime hint

Signed-off-by: discord9 <discord9@163.com>

* test(flow): trim sqlness result eof

Signed-off-by: discord9 <discord9@163.com>

* fix(flow): harden eval schedule edges

Signed-off-by: discord9 <discord9@163.com>

* fix(flow): address scheduled flow review

Signed-off-by: discord9 <discord9@163.com>

* fix(flow): clean scheduled config handling

Signed-off-by: discord9 <discord9@163.com>

* test(flow): add eval interval compat case

Signed-off-by: discord9 <discord9@163.com>

* test(flow): cover show create flow in compat

Signed-off-by: discord9 <discord9@163.com>

* fix(flow): drop scheduled time from flow context

Signed-off-by: discord9 <discord9@163.com>

* test(flow): assert scheduled now binding

Signed-off-by: discord9 <discord9@163.com>

---------

Signed-off-by: discord9 <discord9@163.com>
2026-06-29 09:55:27 +00:00

32 lines
796 B
SQL

CREATE TABLE eval_interval_schedule_input (
ts TIMESTAMP(3) TIME INDEX,
series STRING,
v DOUBLE,
PRIMARY KEY(series)
);
CREATE FLOW eval_interval_schedule_flow
SINK TO eval_interval_schedule_sink
EVAL INTERVAL '1s'
AS
SELECT
date_trunc('second', now()) AS ts,
count(v) AS value_count
FROM eval_interval_schedule_input
GROUP BY date_trunc('second', now());
INSERT INTO eval_interval_schedule_input VALUES
('2026-06-25 00:00:00', 'a', 1.0);
-- SQLNESS SLEEP 5s
SELECT
count(DISTINCT ts) >= 2 AS has_multiple_scheduled_ticks,
min(value_count) AS min_value_count,
max(value_count) AS max_value_count
FROM eval_interval_schedule_sink
WHERE value_count > 0;
DROP FLOW eval_interval_schedule_flow;
DROP TABLE eval_interval_schedule_sink;
DROP TABLE eval_interval_schedule_input;