Bug #69424 '/dev/sdb1' not a regular file
| Submitted: | 7 Jun 2013 11:57 | Modified: | 2 Dec 2013 20:42 |
|---|---|---|---|
| Reporter: | Christian Rabe | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S2 (Serious) |
| Version: | 5.6.12 | OS: | Linux (Debian Wheezy) |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | innodb, raw device, regression | ||
[7 Jun 2013 11:57]
Christian Rabe
[26 Jun 2013 7:39]
Valeriy Kravchuk
I wonder what this regression bug is waiting for? It is easy to verify, like this:
[openxs@chief 5.5]$ su -c "bin/mysqld_safe --no-defaults --user=root --datadir=/tmp/data --innodb_data_home_dir= --innodb_data_file_path=/dev/sda3:2Graw --socket=/tmp/mysql.sock &"
Password:
[openxs@chief 5.5]$ 130626 10:33:01 mysqld_safe Logging to '/tmp/data/chief.err'.
130626 10:33:01 mysqld_safe Starting mysqld daemon with databases from /tmp/data
[openxs@chief 5.5]$ bin/mysql --no-defaults -uroot test Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.32 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create table t1(c1 int) engine=InnoDB;
Query OK, 0 rows affected (0.12 sec)
mysql> show create table t1\G
*************************** 1. row ***************************
Table: t1
Create Table: CREATE TABLE `t1` (
`c1` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
mysql> show variables like 'innodb_data_file%';
+-----------------------+-----------------+
| Variable_name | Value |
+-----------------------+-----------------+
| innodb_data_file_path | /dev/sda3:2Graw |
+-----------------------+-----------------+
1 row in set (0.00 sec)
mysql> exit
Bye
So, 5.5.32 allowed to use raw device and create InnoDB table on it. Now, let's "upgrade" to 5.6.12:
[openxs@chief 5.5]$ bin/mysqladmin --no-defaults -uroot shutdown [openxs@chief 5.5]$ 130626 10:34:05 mysqld_safe mysqld from pid file /tmp/data/chief.pid ended
[openxs@chief 5.5]$ cd ../5.6
[openxs@chief 5.6]$ su -c "bin/mysqld_safe --no-defaults --user=root --datadir=/tmp/data --innodb_data_home_dir= --innodb_data_file_path=/dev/sda3:2Graw --socket=/tmp/mysql.sock &"
Password:
[openxs@chief 5.6]$ 130626 10:34:30 mysqld_safe Logging to '/tmp/data/chief.err'.
130626 10:34:30 mysqld_safe Starting mysqld daemon with databases from /tmp/data
130626 10:34:30 mysqld_safe mysqld from pid file /tmp/data/chief.pid ended
[openxs@chief 5.6]$ tail -100 /tmp/data/chief.err
...
130626 10:33:02 InnoDB: 5.5.32 started; log sequence number 1595669
130626 10:33:02 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
130626 10:33:02 [Note] - '0.0.0.0' resolves to '0.0.0.0';
130626 10:33:02 [Note] Server socket created on IP: '0.0.0.0'.
130626 10:33:02 [Note] Event Scheduler: Loaded 0 events
130626 10:33:02 [Note] /home/openxs/dbs/5.5/bin/mysqld: ready for connections.
Version: '5.5.32' socket: '/tmp/mysql.sock' port: 3306 Source distribution
130626 10:34:01 [Note] /home/openxs/dbs/5.5/bin/mysqld: Normal shutdown
130626 10:34:01 [Note] Event Scheduler: Purging the queue. 0 events
130626 10:34:03 InnoDB: Starting shutdown...
130626 10:34:05 InnoDB: Shutdown completed; log sequence number 1597314
130626 10:34:05 [Note] /home/openxs/dbs/5.5/bin/mysqld: Shutdown complete
130626 10:34:05 mysqld_safe mysqld from pid file /tmp/data/chief.pid ended
130626 10:34:30 mysqld_safe Starting mysqld daemon with databases from /tmp/data
2013-06-26 10:34:30 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2013-06-26 10:34:30 4372 [Note] Plugin 'FEDERATED' is disabled.
2013-06-26 10:34:30 4372 [Note] InnoDB: The InnoDB memory heap is disabled
2013-06-26 10:34:30 4372 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2013-06-26 10:34:30 4372 [Note] InnoDB: Compressed tables use zlib 1.2.3
2013-06-26 10:34:30 4372 [Note] InnoDB: Using Linux native AIO
2013-06-26 10:34:30 4372 [Note] InnoDB: Not using CPU crc32 instructions
2013-06-26 10:34:30 4372 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2013-06-26 10:34:30 4372 [Note] InnoDB: Completed initialization of buffer pool
2013-06-26 10:34:30 4372 [ERROR] InnoDB: '/dev/sda3' not a regular file.
2013-06-26 10:34:30 4372 [ERROR] InnoDB: The system tablespace must be writable!
2013-06-26 10:34:30 4372 [ERROR] Plugin 'InnoDB' init function returned error.
2013-06-26 10:34:30 4372 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2013-06-26 10:34:30 4372 [ERROR] Unknown/unsupported storage engine: InnoDB
2013-06-26 10:34:30 4372 [ERROR] Aborting
2013-06-26 10:34:30 4372 [Note] Binlog end
2013-06-26 10:34:30 4372 [Note] Shutting down plugin 'partition'
...
2013-06-26 10:34:30 4372 [Note] Shutting down plugin 'sha256_password'
2013-06-26 10:34:30 4372 [Note] Shutting down plugin 'mysql_old_password'
2013-06-26 10:34:30 4372 [Note] Shutting down plugin 'mysql_native_password'
2013-06-26 10:34:30 4372 [Note] Shutting down plugin 'binlog'
2013-06-26 10:34:30 4372 [Note] /home/openxs/dbs/5.6/bin/mysqld: Shutdown complete
130626 10:34:30 mysqld_safe mysqld from pid file /tmp/data/chief.pid ended
[27 Jun 2013 12:16]
Shane Bester
FYI 5.5.32->5.6.12 + raw partition, it works okay on Windows...
[27 Jun 2013 13:12]
MySQL Verification Team
Thank you for the bug report.
[2 Dec 2013 20:42]
Daniel Price
Fixed as of 5.6.16, 5.7.4 and noted in 5.6.16, 5.7.4 changelogs. The function "os_file_get_status" would not work with raw devices. Thank you for the bug report.
[3 Feb 2014 10:59]
Laurynas Biveinis
5.6$ bzr log -r 5664 ------------------------------------------------------------ revno: 5664 committer: Annamalai Gurusami <annamalai.gurusami@oracle.com> branch nick: mysql-5.6 timestamp: Mon 2013-12-02 13:52:59 +0530 message: Bug #17023438 '/DEV/SDB1' NOT A REGULAR FILE Problem: The function os_file_get_status() does not handle the raw block devices. Solution: Updated the function os_file_get_status() to handle the raw block devices. rb#3989 approved by Jimmy.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.057 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.