[MCOL-2061] MariaDB shows warnings and could crash on DDL after upgrade Created: 2019-01-04 Updated: 2019-06-14 Resolved: 2019-04-25 |
|
| Status: | Closed |
| Project: | MariaDB ColumnStore |
| Component/s: | installation |
| Affects Version/s: | 1.2.2 |
| Fix Version/s: | 1.2.4 |
| Type: | Bug | Priority: | Critical |
| Reporter: | David Hill (Inactive) | Assignee: | Daniel Lee (Inactive) |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | documentation, relnote | ||
| Environment: |
multiple um system |
||
| Issue Links: |
|
||||||||||||||||||||||||
| Sprint: | 2019-03, 2019-04 | ||||||||||||||||||||||||
| Description |
|
Customer report error with truncate table failed. We are getting this error from Columnstore : ERROR 1031 (HY000) at line 1: Storage engine Columnstore of the table xxxxxx doesn't have this option This is happening when we are trying to truncate a table. We have a 2UM and 2PM configuration. They had a 1um/2pm system running on 1.1.5. upgraded to 1.2.2 the added um2. Problem showed up on tables that existed when at 1.1.5. Issue looks to be related to an issue with the mysql_upgrade script, which gets run during the upgrade and when um2 is added |
| Comments |
| Comment by David Hill (Inactive) [ 2019-01-04 ] | |
|
Issue was reproduced by development and the below workaround corrected the issue. These 2 commands need to be run on tables affected. Drop Table xxx RESTRICT from um1 | |
| Comment by Dalu (Inactive) [ 2019-02-18 ] | |
|
Faced the same problem on a singlenode system | |
| Comment by Andrew Hutchings (Inactive) [ 2019-04-01 ] | |
|
We will be working on a script to solve this short-term as well as a minor fix to ColumnStore to allow the script to work. In addition MDEV-19120 has been opened to track this in MariaDB Server. | |
| Comment by Andrew Hutchings (Inactive) [ 2019-04-02 ] | |
|
Possible easier workaround, the following forces a rebuild the FRM file for a table with the correct ID:
Where 'a' is a column which is already an integer. | |
| Comment by Andrew Hutchings (Inactive) [ 2019-04-04 ] | |
|
This patch enables ALTER TABLE to change table comments and adds a stored procedure which updates the table comment for every ColumnStore table in a system. This causes the FRM files to be rebuilt and therefore the engine IDs. With this patch, when user is doing a major upgrade (or if the user has already done a major upgrade) they will need to execute:
The downside is an table comment the user has will be erased. The alternative is the user could manually change table comments (even if it is to existing comments) after this patch. For QA: two things you should probably test: | |
| Comment by Daniel Lee (Inactive) [ 2019-04-18 ] | |
|
Build tested: 1.2.4-1 nightly server commit: After upgrading 1.1.5-1 to 1.2.4-1, the same issue still exist. It still need to execute the Columnstore_info.columnstore_upgrade() to fix the problem. The ./bin/mysql_upgrade script should perform the same logic the columnstore_upgrade() stored procedure does so that the user would not need to run columnstore_upgrade() separately. Reproduced the issue when upgrading from 1.1.5-1 to 1.2.2-1 with a 2um2pm configuration 1. installed 1.1.5-1 on a 1um2pm stack MariaDB [tpch10]> truncate table orders; Verified the following scenarios: 1. Fix one table using 'alter table' command. MariaDB [tpch10]> alter table orders change o_orderkey o_orderkey int comment ''; MariaDB [tpch10]> truncate table orders; 2. With existing 2um2pm stack from step #1, upgrade to 1.2.4-1 Welcome to the MariaDB monitor. Commands end with ; or \g. Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [tpch10]> truncate table nation; MariaDB [tpch10]> truncate table nation; 3. Upgrade 1.1.5-1 to 1.2.4-1 directly Using the same steps described in the "Reproduced the issue" section to upgrade 1.1.5-1 to 1.2.4-1, I encounter the same errors. Executing the "call columnstore_info.columnstore_upgrade();" command would fix the issue, just like in step #2 | |
| Comment by Daniel Lee (Inactive) [ 2019-04-25 ] | |
|
The fix works. We need to document the additional step in the 1.2.4-1 upgrade guide. |