[MCOL-4834] Help text and definition for columnstore_compression_type are inconsistent about support for NO_COMPRESSION Created: 2021-08-11  Updated: 2022-06-02  Resolved: 2022-02-03

Status: Closed
Project: MariaDB ColumnStore
Component/s: None
Affects Version/s: 6.1.1
Fix Version/s: 6.3.1

Type: Bug Priority: Major
Reporter: Geoff Montee (Inactive) Assignee: Daniel Lee (Inactive)
Resolution: Fixed Votes: 0
Labels: None

Sprint: 2021-15, 2021-17

 Description   

In ColumnStore 6.1.1, the NO_COMPRESSION option for columnstore_compression_type was replaced with a third occurrence of SNAPPY:

const char* mcs_compression_type_names[] = {
    "SNAPPY", // 0
    "SNAPPY", // 1
    "SNAPPY", // 2
#ifdef HAVE_LZ4
    "LZ4",    // 3
#endif
    NullS
};

https://github.com/mariadb-corporation/mariadb-columnstore-engine/blob/columnstore-6.1.1-1/dbcon/mysql/ha_mcs_sysvars.cpp#L24

However, the help text for the system variable still refers to the NO_COMPRESSION option:

// compression type
static MYSQL_THDVAR_ENUM(
    compression_type,
    PLUGIN_VAR_RQCMDARG,
    "Controls compression algorithm for create tables. Possible values are: "
    "NO_COMPRESSION segment files aren't compressed; "
    "SNAPPY segment files are Snappy compressed (default);"
    "LZ4 segment files are LZ4 compressed;",
    NULL, // check
    NULL, // update
    1, //default
    &mcs_compression_type_names_lib); // values lib

https://github.com/mariadb-corporation/mariadb-columnstore-engine/blob/columnstore-6.1.1-1/dbcon/mysql/ha_mcs_sysvars.cpp#L41

So these two items are inconsistent:

  • If columnstore_compression_type should no longer support NO_COMPRESSION, then it should most likely be removed from the help text.
  • If columnstore_compression_type should still support NO_COMPRESSION, then it should most likely be added back to mcs_compression_type_names.


 Comments   
Comment by Roman [ 2022-02-01 ]

Plz review.

Comment by Roman [ 2022-02-03 ]

4QA plz check that the output for mariadbd --help --verbose(with MCS plugin loaded) doesn't mention NO_COMPRESSION in columnstore_compression_type variable description.

Comment by Daniel Lee (Inactive) [ 2022-02-03 ]

Build verified: 6.2.4-1 (#3774)

Reproduced issue in 6.1.1

--column-compression-zlib-wrap 
  --columnstore-compression-type=name 
                      Controls compression algorithm for create tables.
                      Possible values are: NO_COMPRESSION segment files aren't
  --innodb-compression-algorithm[=name] 

After fix in 6.2.4

--column-compression-zlib-wrap 
  --columnstore-compression-type=name 
                      Controls compression algorithm for create tables.
  --innodb-compression-algorithm[=name] 

Generated at Thu Feb 08 02:53:22 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.