[MDEV-14651] main.show_check fails in 10.3 when invisble columns are merged Created: 2017-12-14  Updated: 2023-04-27

Status: Open
Project: MariaDB Server
Component/s: Server
Affects Version/s: 10.3
Fix Version/s: 10.4

Type: Bug Priority: Minor
Reporter: Sachin Setiya (Inactive) Assignee: Sergei Golubchik
Resolution: Unresolved Votes: 0
Labels: None
Environment:

All



 Description   

CURRENT_TEST: main.show_check
/home/sachin/10177/build/client/mysqltest: Error on delete of '/home/sachin/10177/build/mysql-test/var/mysqld.1/data//test/t1.frm' (Errcode: 2 "No such file or directory")
mysqldump: Couldn't execute 'SELECT /*!40001 SQL_NO_CACHE */ `?????1` FROM `t1`': Unknown column '?????1' in 'field list' (1054)
Warning: 1024 bytes lost at 0x564eed6a00a0, allocated by T@0 at mysys/string.c:39, client/mysqldump.c:5996, client/mysqldump.c:3716, client/mysqldump.c:4670, client/mysqldump.c:4480, client/mysqldump.c:6177, 0x7f7b762b0830, 0x564eed06b289
Memory lost: 1024 bytes in 1 chunks
mysqltest: At line 918: exec of '/home/sachin/10177/build/client/mysqldump --defaults-file=/home/sachin/10177/build/mysql-test/var/my.cnf --defaults-group-suffix=.1 --default-character-set=latin1 --character-sets-dir=/home/sachin/10177/build/sql/share/charsets --databases mysqltest1 > /home/sachin/10177/build/mysql-test/var/tmp/show_check.mysqltest1.sql' failed, error: 512, status: 2, errno: 11
Output from before failure:
---> Dumping mysqltest1 to outfile1

The result from queries just before the failure was:
< snip >
def information_schema ROUTINES ROUTINES SQL_PATH SQL_PATH 253 192 0 Y 0 0 33
def information_schema ROUTINES ROUTINES SECURITY_TYPE SECURITY_TYPE 253 21 7 N 1 0 33
def information_schema ROUTINES ROUTINES SQL_MODE SQL_MODE 253 24576 89 N 1 0 33
def information_schema ROUTINES ROUTINES ROUTINE_COMMENT ROUTINE_COMMENT 252 589815 0 N 17 0 33
def information_schema ROUTINES ROUTINES DEFINER DEFINER 253 567 14 N 1 0 33
SPECIFIC_NAME ROUTINE_CATALOG ROUTINE_SCHEMA ROUTINE_NAME ROUTINE_TYPE DTD_IDENTIFIER ROUTINE_BODY ROUTINE_DEFINITION EXTERNAL_NAME EXTERNAL_LANGUAGE PARAMETER_STYLE IS_DETERMINISTIC SQL_DATA_ACCESS SQL_PATH SECURITY_TYPE SQL_MODE ROUTINE_COMMENT DEFINER
f1 def test f1 FUNCTION int(11) SQL RETURN 1 NULL NULL SQL NO CONTAINS SQL NULL DEFINER STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION root@localhost
----------------------------------------------------------------
DROP DATABASE mysqltest1;
DROP TABLE t1;
DROP VIEW v1;
DROP PROCEDURE p1;
DROP FUNCTION f1;
set names koi8r;
DROP DATABASE IF EXISTS mysqltest1;
CREATE DATABASE mysqltest1;
use mysqltest1;
CREATE TABLE t1(�������1 INT);

---> Dumping mysqltest1 to outfile1

More results from queries before failure can be found in /home/sachin/10177/build/mysql-test/var/log/show_check.log

Actually this is an corner case. So the issue is we are using different charset in table field creation , then in mysqldump --default-character-set. So this generates error.
Argument may be it was working before invisible column merge , so invisible column break it.
But actually this test does not work if we use --completely-invisible.

Reason:- The reason that it fails with completely-invisible is because internally it expands to
insert into t1(a) values(1);

Here if a is `�������` that is why --complete-insert fails.



 Comments   
Comment by Elena Stepanova [ 2018-01-11 ]

Is it still relevant, or should we close it?

Comment by Sachin Setiya (Inactive) [ 2018-01-12 ]

Hi elenst

Yes it is relevant this was never solved , I just commented the failing lines in test case.

Generated at Thu Feb 08 08:15:14 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.