Skip to content

Commit

Permalink
More regression testing (#83)
Browse files Browse the repository at this point in the history
  • Loading branch information
reshke authored Feb 1, 2025
1 parent 6cad3d8 commit af89877
Show file tree
Hide file tree
Showing 13 changed files with 701 additions and 215 deletions.
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ EXTENSION = yezzey
DATA = yezzey--1.0.sql yezzey--1.0--1.8.sql yezzey--1.8--1.8.1.sql yezzey--1.8.1--1.8.2.sql yezzey--1.8.2--1.8.3.sql yezzey--1.8.3--1.8.4.sql
PGFILEDESC = "yezzey - external storage tables offloading extension"

REGRESS = simple versions alter
REGRESS = simple versions drop-column yezzey-alter yezzey-vacuum yezzey-trunc

ifdef USE_PGXS
PG_CONFIG = pg_config
Expand Down Expand Up @@ -71,4 +71,4 @@ format:
test:
@-$(MAKE) -C test test

.PHONY: test
.PHONY: test
33 changes: 0 additions & 33 deletions expected/alter.out

This file was deleted.

90 changes: 90 additions & 0 deletions expected/drop-column.out
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
CREATE EXTENSION yezzey;
SET client_min_messages TO WARNING;
-- AO
CREATE TABLE regaotya(i INT, j INT) WITH (appendonly=true);
INSERT INTO regaotya SELECT i,i + 1 FROM generate_series(1, 100000) i;
SELECT * FROM yezzey_define_offload_policy('regaotya');
yezzey_define_offload_policy
------------------------------

(1 row)

SELECT reltablespace FROM pg_class where oid = 'regaotya'::regclass::oid;
reltablespace
---------------
8555
(1 row)

SELECT count(1) from regaotya;
count
--------
100000
(1 row)

-- drop columnn
ALTER TABLE regaotya DROP COLUMN j;
SELECT count(1) from regaotya;
count
--------
100000
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaotya');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaotya');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaotya');
DROP TABLE regaotya;
-- AOCS
CREATE TABLE regaocstya(i INT, j INT) WITH (appendonly=true, orientation=column);
INSERT INTO regaocstya SELECT i,i + 1 FROM generate_series(1, 100000) i;
SELECT * FROM yezzey_define_offload_policy('regaocstya');
yezzey_define_offload_policy
------------------------------

(1 row)

SELECT reltablespace FROM pg_class where oid = 'regaocstya'::regclass::oid;
reltablespace
---------------
8555
(1 row)

SELECT count(1) from regaocstya;
count
--------
100000
(1 row)

-- drop columnn
ALTER TABLE regaocstya DROP COLUMN j;
SELECT count(1) from regaocstya;
count
--------
100000
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaocstya');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaocstya');
count
-------
6
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaocstya');
DROP TABLE regaocstya;
DROP EXTENSION yezzey;
CHECKPOINT;
177 changes: 177 additions & 0 deletions expected/yezzey-alter.out
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
CREATE EXTENSION yezzey;
SET client_min_messages TO WARNING;
-- AO
CREATE TABLE regaoty(i INT) WITH (appendonly=true);
INSERT INTO regaoty SELECT * FROM generate_series(1, 100000);
SELECT * FROM yezzey_define_offload_policy('regaoty');
yezzey_define_offload_policy
------------------------------

(1 row)

SELECT reltablespace FROM pg_class where oid = 'regaoty'::regclass::oid;
reltablespace
---------------
8555
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaoty');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaoty');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaoty');
SELECT count(1) FROM regaoty;
count
--------
100000
(1 row)

INSERT INTO regaoty SELECT * FROM generate_series(1, 100000);
SELECT count(1) FROM regaoty;
count
--------
200000
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaoty');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaoty');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaoty');
DELETE FROM regaoty;
INSERT INTO regaoty SELECT * FROM generate_series(1, 100000);
INSERT INTO regaoty SELECT * FROM generate_series(1, 100000);
SELECT count(1) FROM regaoty;
count
--------
200000
(1 row)

ALTER TABLE regaoty SET DISTRIBUTED RANDOMLY;
SELECT count(1) FROM regaoty;
count
--------
200000
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaoty');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaoty');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaoty');
DROP TABLE regaoty;
\! echo AO simple test OK
AO simple test OK
-- AOCS
CREATE TABLE regaocsty(i INT) WITH (appendonly=true, orientation=column);
INSERT INTO regaocsty SELECT * FROM generate_series(1, 100000);
SELECT * FROM yezzey_define_offload_policy('regaocsty');
yezzey_define_offload_policy
------------------------------

(1 row)

SELECT reltablespace FROM pg_class where oid = 'regaocsty'::regclass::oid;
reltablespace
---------------
8555
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaocsty');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaocsty');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaocsty');
SELECT count(1) FROM regaocsty;
count
--------
100000
(1 row)

INSERT INTO regaocsty SELECT * FROM generate_series(1, 100000);
SELECT count(1) FROM regaocsty;
count
--------
200000
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaocsty');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaocsty');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaocsty');
DELETE FROM regaocsty;
INSERT INTO regaocsty SELECT * FROM generate_series(1, 100000);
INSERT INTO regaocsty SELECT * FROM generate_series(1, 100000);
SELECT count(1) FROM regaocsty;
count
--------
200000
(1 row)

ALTER TABLE regaoty SET DISTRIBUTED RANDOMLY;
ERROR: relation "regaoty" does not exist
SELECT count(1) FROM regaocsty;
count
--------
200000
(1 row)

SELECT count() FROM yezzey_offload_relation_status('regaocsty');
count
-------
3
(1 row)

SELECT count() FROM yezzey_offload_relation_status_per_filesegment('regaocsty');
count
-------
3
(1 row)

--SELECT count() FROM yezzey_relation_describe_external_storage_structure('regaocsty');
DROP TABLE regaocsty;
\! echo AOCS simple test OK
AOCS simple test OK
DROP EXTENSION yezzey;
CHECKPOINT;
Loading

0 comments on commit af89877

Please sign in to comment.