Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test: adds sqlness test for TTL #5063

Merged
merged 4 commits into from
Dec 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 108 additions & 0 deletions tests/cases/standalone/common/ttl/alter_table_ttl.result
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
CREATE TABLE test_ttl(ts TIMESTAMP TIME INDEX, val INT, PRIMARY KEY(val)) WITH (ttl = '1 day');

Affected Rows: 0

INSERT INTO test_ttl VALUES
(now(), 1),
(now(), 2),
(now(), 3);

Affected Rows: 3

SELECT val from test_ttl;

+-----+
| val |
+-----+
| 1 |
| 2 |
| 3 |
+-----+

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

+-------------------------------+
| ADMIN flush_table('test_ttl') |
+-------------------------------+
| 0 |
+-------------------------------+

ADMIN compact_table('test_ttl');

+---------------------------------+
| ADMIN compact_table('test_ttl') |
+---------------------------------+
| 0 |
+---------------------------------+

SELECT val from test_ttl;

+-----+
| val |
+-----+
| 1 |
| 2 |
| 3 |
+-----+

ALTER TABLE test_ttl SET ttl = '1 second';

Affected Rows: 0

-- SQLNESS SLEEP 2s
ADMIN compact_table('test_ttl');

+---------------------------------+
| ADMIN compact_table('test_ttl') |
+---------------------------------+
| 0 |
+---------------------------------+

SELECT val from test_ttl;

++
++

ALTER TABLE test_ttl SET ttl = '1 minute';

Affected Rows: 0

INSERT INTO test_ttl VALUES
(now(), 1),
(now(), 2),
(now(), 3);

Affected Rows: 3

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

+-------------------------------+
| ADMIN flush_table('test_ttl') |
+-------------------------------+
| 0 |
+-------------------------------+

ADMIN compact_table('test_ttl');

+---------------------------------+
| ADMIN compact_table('test_ttl') |
+---------------------------------+
| 0 |
+---------------------------------+

SELECT val from test_ttl;

+-----+
| val |
+-----+
| 1 |
| 2 |
| 3 |
+-----+

DROP TABLE test_ttl;

Affected Rows: 0

40 changes: 40 additions & 0 deletions tests/cases/standalone/common/ttl/alter_table_ttl.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
CREATE TABLE test_ttl(ts TIMESTAMP TIME INDEX, val INT, PRIMARY KEY(val)) WITH (ttl = '1 day');

INSERT INTO test_ttl VALUES
(now(), 1),
(now(), 2),
(now(), 3);

SELECT val from test_ttl;

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

ADMIN compact_table('test_ttl');

SELECT val from test_ttl;

ALTER TABLE test_ttl SET ttl = '1 second';

-- SQLNESS SLEEP 2s
ADMIN compact_table('test_ttl');

SELECT val from test_ttl;

ALTER TABLE test_ttl SET ttl = '1 minute';

INSERT INTO test_ttl VALUES
(now(), 1),
(now(), 2),
(now(), 3);

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

ADMIN compact_table('test_ttl');


SELECT val from test_ttl;


DROP TABLE test_ttl;
43 changes: 43 additions & 0 deletions tests/cases/standalone/common/ttl/basic.result
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
CREATE TABLE test_ttl(ts TIMESTAMP TIME INDEX, val INT) WITH (ttl = '1 second');

Affected Rows: 0

INSERT INTO test_ttl VALUES
(now(), 1);

Affected Rows: 1

SELECT val from test_ttl;

+-----+
| val |
+-----+
| 1 |
+-----+

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

+-------------------------------+
| ADMIN flush_table('test_ttl') |
+-------------------------------+
| 0 |
+-------------------------------+

ADMIN compact_table('test_ttl');

+---------------------------------+
| ADMIN compact_table('test_ttl') |
+---------------------------------+
| 0 |
+---------------------------------+

SELECT val from test_ttl;

++
++

DROP TABLE test_ttl;

Affected Rows: 0

15 changes: 15 additions & 0 deletions tests/cases/standalone/common/ttl/basic.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
CREATE TABLE test_ttl(ts TIMESTAMP TIME INDEX, val INT) WITH (ttl = '1 second');

INSERT INTO test_ttl VALUES
(now(), 1);

SELECT val from test_ttl;

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

ADMIN compact_table('test_ttl');

SELECT val from test_ttl;

DROP TABLE test_ttl;
96 changes: 96 additions & 0 deletions tests/cases/standalone/common/ttl/database_ttl.result
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
CREATE DATABASE test_ttl_db WITH (ttl = '1 second');

Affected Rows: 1

USE test_ttl_db;

Affected Rows: 0

-- It will use the database TTL setting --
CREATE TABLE test_ttl(ts TIMESTAMP TIME INDEX, val INT);

Affected Rows: 0

INSERT INTO test_ttl VALUES
(now(), 1);

Affected Rows: 1

SELECT val from test_ttl;

+-----+
| val |
+-----+
| 1 |
+-----+

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

+-------------------------------+
| ADMIN flush_table('test_ttl') |
+-------------------------------+
| 0 |
+-------------------------------+

ADMIN compact_table('test_ttl');

+---------------------------------+
| ADMIN compact_table('test_ttl') |
+---------------------------------+
| 0 |
+---------------------------------+

-- Must be expired --
SELECT val from test_ttl;

++
++

ALTER DATABASE test_ttl_db SET ttl = '1 day';

Affected Rows: 0

INSERT INTO test_ttl VALUES
(now(), 1);

Affected Rows: 1

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

+-------------------------------+
| ADMIN flush_table('test_ttl') |
+-------------------------------+
| 0 |
+-------------------------------+

ADMIN compact_table('test_ttl');

+---------------------------------+
| ADMIN compact_table('test_ttl') |
+---------------------------------+
| 0 |
+---------------------------------+

-- Must not be expired --
SELECT val from test_ttl;

+-----+
| val |
+-----+
| 1 |
+-----+

DROP TABLE test_ttl;

Affected Rows: 0

USE public;

Affected Rows: 0

DROP DATABASE test_ttl_db;

Affected Rows: 0

39 changes: 39 additions & 0 deletions tests/cases/standalone/common/ttl/database_ttl.sql
killme2008 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
CREATE DATABASE test_ttl_db WITH (ttl = '1 second');

USE test_ttl_db;

-- It will use the database TTL setting --
CREATE TABLE test_ttl(ts TIMESTAMP TIME INDEX, val INT);

INSERT INTO test_ttl VALUES
(now(), 1);

SELECT val from test_ttl;

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

ADMIN compact_table('test_ttl');

-- Must be expired --
SELECT val from test_ttl;

ALTER DATABASE test_ttl_db SET ttl = '1 day';

INSERT INTO test_ttl VALUES
(now(), 1);

-- SQLNESS SLEEP 2s
ADMIN flush_table('test_ttl');

ADMIN compact_table('test_ttl');

-- Must not be expired --
SELECT val from test_ttl;

DROP TABLE test_ttl;


USE public;

DROP DATABASE test_ttl_db;
Loading
Loading