【bugfix】set(compresstype=3)生效
This commit is contained in:
@ -18029,6 +18029,11 @@ bool static transformTableCompressedOptions(Relation rel, bytea* relOption, List
|
||||
errmsg("compress_level=0, compress_chunk_size=4096, compress_prealloc_chunks=0, compress_byte_convert=false, compress_diff_convert=false should be set when compresstype=0")));
|
||||
}
|
||||
|
||||
if (newCompressOpt->compressType == COMPRESS_TYPE_PGZSTD) {
|
||||
ereport(ERROR, (errcode(ERRCODE_INVALID_OPTION),
|
||||
errmsg("row-compression feature current not support algorithm is PGZSTD.")));
|
||||
}
|
||||
|
||||
if (newCompressOpt->compressType != COMPRESS_TYPE_ZSTD && newCompressOpt->compressLevel != 0) {
|
||||
ereport(ERROR, (errcode(ERRCODE_INVALID_OPTION),
|
||||
errmsg("compress_level should be used with ZSTD algorithm.")));
|
||||
|
||||
@ -29,7 +29,9 @@ DROP TABLE alter_compress_params_schema.uncompress_astore_to_cbc_1_cdc_1;
|
||||
-- the new compression parameters is out of the value range
|
||||
CREATE TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5 (id int, value varchar);
|
||||
INSERT INTO alter_compress_params_schema.uncompress_astore_to_compresstype_5 SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5 SET (compresstype = 3); -- fail
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5 SET (compresstype = 5); -- fail
|
||||
ERROR: value 5 out of bounds for option "compresstype"
|
||||
DETAIL: Valid values are between "0" and "3".
|
||||
DROP TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5;
|
||||
CREATE TABLE alter_compress_params_schema.uncompress_astore_to_compresstype__1 (id int, value varchar);
|
||||
INSERT INTO alter_compress_params_schema.uncompress_astore_to_compresstype__1 SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
@ -93,6 +95,11 @@ INSERT INTO alter_compress_params_schema.uncompress_astore_to_compresstype_1_ccs
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_1_ccs_4096_cpc_2 SET (compresstype = 1, compress_chunk_size = 4096, compress_prealloc_chunks = 2); -- fail
|
||||
ERROR: invalid compress_prealloc_chunks 2, must be less than 2 for uncompress_astore_to_compresstype_1_ccs_4096_cpc_2
|
||||
DROP TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_1_ccs_4096_cpc_2;
|
||||
CREATE TABLE alter_compress_params_schema.uncompress_to_compresstype_3 (id int, value varchar);
|
||||
INSERT INTO alter_compress_params_schema.uncompress_to_compresstype_3 SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_to_compresstype_3 SET (compresstype = 3); -- fail
|
||||
ERROR: row-compression feature current not support algorithm is PGZSTD.
|
||||
DROP TABLE alter_compress_params_schema.uncompress_to_compresstype_3;
|
||||
-- set compressed options of column table
|
||||
CREATE TABLE alter_compress_params_schema.alter_column_table_compressed_options (id int, value varchar) WITH (ORIENTATION = column);
|
||||
INSERT INTO alter_compress_params_schema.alter_column_table_compressed_options SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
|
||||
@ -30,7 +30,7 @@ DROP TABLE alter_compress_params_schema.uncompress_astore_to_cbc_1_cdc_1;
|
||||
-- the new compression parameters is out of the value range
|
||||
CREATE TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5 (id int, value varchar);
|
||||
INSERT INTO alter_compress_params_schema.uncompress_astore_to_compresstype_5 SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5 SET (compresstype = 3); -- fail
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5 SET (compresstype = 5); -- fail
|
||||
DROP TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_5;
|
||||
|
||||
CREATE TABLE alter_compress_params_schema.uncompress_astore_to_compresstype__1 (id int, value varchar);
|
||||
@ -88,6 +88,10 @@ INSERT INTO alter_compress_params_schema.uncompress_astore_to_compresstype_1_ccs
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_1_ccs_4096_cpc_2 SET (compresstype = 1, compress_chunk_size = 4096, compress_prealloc_chunks = 2); -- fail
|
||||
DROP TABLE alter_compress_params_schema.uncompress_astore_to_compresstype_1_ccs_4096_cpc_2;
|
||||
|
||||
CREATE TABLE alter_compress_params_schema.uncompress_to_compresstype_3 (id int, value varchar);
|
||||
INSERT INTO alter_compress_params_schema.uncompress_to_compresstype_3 SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
ALTER TABLE alter_compress_params_schema.uncompress_to_compresstype_3 SET (compresstype = 3); -- fail
|
||||
DROP TABLE alter_compress_params_schema.uncompress_to_compresstype_3;
|
||||
-- set compressed options of column table
|
||||
CREATE TABLE alter_compress_params_schema.alter_column_table_compressed_options (id int, value varchar) WITH (ORIENTATION = column);
|
||||
INSERT INTO alter_compress_params_schema.alter_column_table_compressed_options SELECT generate_series(1,5), 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
|
||||
|
||||
Reference in New Issue
Block a user