Bug #36336 InnoDB on AIX reports operating system error number 0 -- harmless?
Submitted: 25 Apr 2008 9:06 Modified: 16 Sep 2008 11:44
Reporter: Björn Wiberg Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:5.0.51a (community binary 32bit for AIX) OS:IBM AIX (5.3 ML2)
Assigned to: CPU Architecture:Any

[25 Apr 2008 9:06] Björn Wiberg
Description:
When starting mysqld, I get the following in the error log:

080425 10:35:57  mysqld started
080425 10:35:57  InnoDB: Operating system error number 0 in a file operation.
InnoDB: Error number 0 means 'Error 0'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
080425 10:35:57  InnoDB: Operating system error number 0 in a file operation.
InnoDB: Error number 0 means 'Error 0'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
080425 10:35:57  InnoDB: Operating system error number 0 in a file operation.
InnoDB: Error number 0 means 'Error 0'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
080425 10:35:57  InnoDB: Operating system error number 0 in a file operation.
InnoDB: Error number 0 means 'Error 0'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
080425 10:35:57  InnoDB: Operating system error number 0 in a file operation.
InnoDB: Error number 0 means 'Error 0'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
080425 10:35:57  InnoDB: Operating system error number 0 in a file operation.
InnoDB: Error number 0 means 'Error 0'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
080425 10:35:57  InnoDB: Started; log sequence number 0 43655
080425 10:35:57 [Note] Slave SQL thread initialized, starting replication in log 'mysql-bin.001106' at position 12099337, relay log '/usr/local/mysql/logs/mysql-relay-bin.002711' position: 12099474
080425 10:35:57 [Note] Slave I/O thread: connected to master 'secret@my.ip.here:3306',  replication started in log 'mysql-bin.001170' at position 2271901
080425 10:35:57 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: '5.0.51a-log'  socket: '/tmp/mysql.sock'  port: 3306  MySQL Community Server (GPL)

Things seem to be running, but the error messages are worrying me. Are they harmless?

Thanks in advance!

Best regards,
Björn

How to repeat:
Run the MySQL Community Edition 5.0.51a 32-bit for IBM AIX, make sure InnoDB is not disabled, and start the server. Watch the error log.

I'm using the following config:

---8<---
[mysqld]
character-set-server=latin1
collation-server=latin1_swedish_ci
default-time-zone="Europe/Stockholm"
ft_min_word_len=3
interactive_timeout=60
log=/usr/local/mysql/logs/mysql.log
log_bin_trust_function_creators=1
log-error=/usr/local/mysql/logs/mysql.err
max_allowed_packet=16M
max_connect_errors=999999999
max_connections=200
max_user_connections=20
myisam-recover=BACKUP,FORCE
port-open-timeout=30
wait_timeout=60

innodb_file_per_table
innodb_flush_log_at_trx_commit=1
innodb_support_xa=1

flush_time=10

log-bin=/usr/local/mysql/logs/mysql-bin
max_binlog_size=16777216
read-only
relay-log=/usr/local/mysql/logs/mysql-relay-bin
server-id=2
sync_binlog=1

slave-skip-errors=1049,1051,1062
--->8---

Suggested fix:
Not reporting error 0 as an error if it is not?
[28 Apr 2008 14:54] Heikki Tuuri
Björn,

I think the file I/O function in AIX returns an error code, but errno is 0.

I think I have seen this problem reported before, maybe 5 years ago.

Can you recompile and make InnoDB to print the error returned by the OS file function?

Regards,

Heikki
[28 Apr 2008 15:13] Björn Wiberg
Hi Heikki!

The best would be if you contacted the people responsible for the binary build (as we are using the pre-compiled binaries):

http://dev.mysql.com/downloads/mysql/5.0.html#aix

We are using the "AIX 5.2 (POWER, 32-bit) 5.0.51a" version (mysql-5.0.51a-aix5.2-powerpc.tar.gz).

Thanks in advance!

Best regards,
Björn
[23 Jun 2008 17:37] Heikki Tuuri
Dear build team,

has anyone seen this problem for a mysqld binary built on AIX?

Regards,

Heikki
[17 Jul 2008 11:32] Mikael Fridh
Today I tested both the 32bit and 64bit version of the binary release on another AIX and saw no errors:

bash-3.00$ oslevel
5.3.0.0
bash-3.00$ oslevel -s
5300-08-01-0819
bash-3.00$ uname -a
AIX musica-lp02 3 5 0000999AD400

binary release: mysql-5.0.51a-aix5.2-powerpc.tar.gz
===================================================
bash-3.00$ ./bin/mysqld --defaults-file=etc/my.cnf
InnoDB: The first specified data file ./ibdata1 did not exist:
InnoDB: a new database to be created!
080717 13:16:00  InnoDB: Setting file ./ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
080717 13:16:00  InnoDB: Data file ./ibdata2 did not exist: new to be created
080717 13:16:00  InnoDB: Setting file ./ibdata2 size to 10 MB
InnoDB: Database physically writes the file full: wait...
080717 13:16:00  InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
080717 13:16:00  InnoDB: Log file ./ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
080717 13:16:01  InnoDB: Started; log sequence number 0 0
080717 13:16:01 [Note] ./bin/mysqld: ready for connections.
Version: '5.0.51a'  socket: '/home/mikfr126/mysql/tmp/mysql.sock'  port: 3316  MySQL Community Server (GPL)

binary release: mysql-5.0.51a-aix5.2-powerpc-64bit.tar.gz
=========================================================
bash-3.00$ ./bin/mysqld --defaults-file=etc/my.cnf
InnoDB: The first specified data file ./ibdata1 did not exist:
InnoDB: a new database to be created!
080717 13:21:00  InnoDB: Setting file ./ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
080717 13:21:00  InnoDB: Data file ./ibdata2 did not exist: new to be created
080717 13:21:00  InnoDB: Setting file ./ibdata2 size to 10 MB
InnoDB: Database physically writes the file full: wait...
080717 13:21:00  InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
080717 13:21:00  InnoDB: Log file ./ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
080717 13:21:00  InnoDB: Started; log sequence number 0 0
080717 13:21:00 [Note] ./bin/mysqld: ready for connections.
Version: '5.0.51a'  socket: '/home/mikfr126/mysql/tmp/mysql.sock'  port: 3316  MySQL Community Server (GPL)
[16 Sep 2008 11:14] Björn Wiberg
Tested OK on AIX 5.3 5300-08 Service Pack 1 (= 5300-08-01-0819), so either had something to do with 5.0.51a or with older AIX libraries.

Please feel free to close this bug.
[16 Sep 2008 11:44] Valeriy Kravchuk
Closed as not repeatable on AIX 5.3 5300-08 Service Pack 1.