--
-- ALTER_TABLE
-- Add column for empty table, type test
--
set time zone 'PRC';
-- Test on correctness of bitmap
drop table if exists mergepartitionbitmap1;
CREATE TABLE mergepartitionbitmap1
(
L_ORDERKEY BIGINT NOT NULL
, L_PARTKEY BIGINT NOT NULL
, L_SUPPKEY BIGINT NOT NULL
, L_LINENUMBER BIGINT NOT NULL
, L_QUANTITY DECIMAL(15,2) NOT NULL
, L_EXTENDEDPRICE DECIMAL(15,2) NOT NULL
, L_DISCOUNT DECIMAL(15,2) NOT NULL
, L_TAX DECIMAL(15,2) NOT NULL
, L_RETURNFLAG CHAR(1) NOT NULL
, L_LINESTATUS CHAR(1) NOT NULL
, L_SHIPDATE DATE NOT NULL
, L_COMMITDATE DATE NOT NULL
, L_RECEIPTDATE DATE NOT NULL
, L_SHIPINSTRUCT CHAR(25) NOT NULL
, L_SHIPMODE CHAR(10) NOT NULL
, L_COMMENT VARCHAR(44) NOT NULL
--, primary key (L_ORDERKEY, L_LINENUMBER)
)
partition by range(L_ORDERKEY)
(partition p1 values less than(3000),
partition p2 values less than(6000),
partition p3 values less than(15000))
;
create index mergepartitionbitmap1_ind on mergepartitionbitmap1 (L_ORDERKEY) local;
copy mergepartitionbitmap1 from '@abs_srcdir@/data/lineitem.data' delimiter '|';
copy mergepartitionbitmap1 from '@abs_srcdir@/data/lineitem.data' delimiter '|';
select relname from pg_partition where parentid = (select oid from pg_class where relname = 'mergepartitionbitmap1_ind') order by 1;
select relname, boundaries from pg_partition where parentid in (select oid from pg_class where relname = 'mergepartitionbitmap1') order by 2;
select count(*) from mergepartitionbitmap1;
delete from mergepartitionbitmap1 where L_LINENUMBER=2;
select count(*) from mergepartitionbitmap1;
alter table mergepartitionbitmap1 merge partitions p1, p2 into partition px;
select relname, boundaries from pg_partition where parentid in (select oid from pg_class where relname = 'mergepartitionbitmap1') order by 2;
select relname from pg_partition where parentid = (select oid from pg_class where relname = 'mergepartitionbitmap1_ind') order by 1;
select count(*) from mergepartitionbitmap1;
delete from mergepartitionbitmap1 where L_LINENUMBER=3;
delete from mergepartitionbitmap1 where L_LINENUMBER=4;
select count(*) from mergepartitionbitmap1;
alter table mergepartitionbitmap1 merge partitions px, p3 into partition p3;
select relname, boundaries from pg_partition where parentid in (select oid from pg_class where relname = 'mergepartitionbitmap1') order by 2;
select relname from pg_partition where parentid = (select oid from pg_class where relname = 'mergepartitionbitmap1_ind') order by 1;
select count(*) from mergepartitionbitmap1;
drop table mergepartitionbitmap1;