Bug #39881 MySQL 5.0.60sp1 Crash on Solaris 10 When "expire_logs_days" Is Set
Submitted: 6 Oct 2008 12:28 Modified: 7 Oct 2008 8:45
Reporter: Ryan Douglas Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: General Severity:S3 (Non-critical)
Version:5.0.60sp1 OS:Solaris (Generic_118855-14)
Assigned to: CPU Architecture:Any

[6 Oct 2008 12:28] Ryan Douglas
Description:
MySQL 5.0.60sp1 (AMD 64) on Solaris 10 at patch level Generic_118855-14 crashes when the parameter "expire_logs_days" is set.  The database does not crash when one omits this setting.

Also tested MySQL 5.0.60sp1 (AMD 64) on Solaris 10 at patch level Generic_120012-14 and found that the database does not crash when "expire_logs_days" is set.

OS:

uname -X
System = SunOS
Node = standby.somehost.somewhere
Release = 5.10
KernelID = Generic_118855-14
Machine = i86pc
BusType = <unknown>
Serial = <unknown>
Users = <unknown>
OEM# = 0
Origin# = 1
NumCPU = 4

Hardware:

prtdiag
System Configuration: Sun Microsystems Sun Fire X4100 Server
BIOS Configuration: American Megatrends Inc. 080010  08/01/2006
BMC Configuration: IPMI 2.0 (KCS: Keyboard Controller Style)

==== Processor Sockets ====================================

Version                          Location Tag
-------------------------------- --------------------------
Dual Core AMD Opteron(tm) Processor 280 H0
Dual Core AMD Opteron(tm) Processor 280 H1
Dual Core AMD Opteron(tm) Processor 280 H2
Dual Core AMD Opteron(tm) Processor 280 H3

==== Memory Device Sockets ================================

Type    Status Set Device Locator      Bank Locator
------- ------ --- ------------------- --------------------
DDR     in use 0   H0_DIMM0            BANK0
DDR     in use 0   H0_DIMM1            BANK1
DDR     in use 0   H0_DIMM2            BANK2
DDR     in use 0   H0_DIMM3            BANK3
DDR     in use 0   H1_DIMM0            BANK4
DDR     in use 0   H1_DIMM1            BANK5
DDR     in use 0   H1_DIMM2            BANK6
DDR     in use 0   H1_DIMM3            BANK7

==== On-Board Devices =====================================
 LSI serial-ATA #1
 Gigabit Ethernet #1
 Gigabit Ethernet #2
 ATI Rage XL VGA

==== Upgradeable Slots ====================================

ID  Status    Type             Description
--- --------- ---------------- ----------------------------
0   in use    PCI-X            PCIX SLOT0
1   available PCI-X            PCIX SLOT1
2   in use    PCI-X            PCIX SLOT2
3   available PCI-X            PCIX SLOT3
4   available PCI-X            PCIX SLOT4

MySQLD Binary

file mysqld
mysqld:         ELF 64-bit LSB executable AMD64 Version 1, dynamically linked, not stripped

MySQLD Version

mysqld --version
mysqld  Ver 5.0.60sp1-enterprise-gpl for pc-solaris2.10 on x86_64 (MySQL Enterprise Server (GPL))

MySQL Server Configurations Set:

[mysqld]
user                = mysql
port                = 3306
basedir             = /opt/mysql/product/5.0.60sp1-enterprise-gpl-64
datadir             = /data01/mydata/instance/data
tmpdir              = /data01/mydata/instance/tmp
slave_load_tmpdir   = /data01/mydata/instance/tmp
pid-file            = /data01/mydata/instance/mysql.pid
socket              = /data01/mydata/instance/mysql.sock
log-bin             = /data01/mydata/instance/binlogs/instance-bin
log-bin-index       = /data01/mydata/instance/binlogs/instance-bin.index
expire_logs_days    = 7
relay-log           = /data01/mydata/instance/relaylogs/instance-relay
relay-log-index     = /data01/mydata/instance/relaylogs/instance-relay.index
relay-log-info-file = /data01/mydata/instance/relaylogs/instance-relay.info
log_error           = /data01/mydata/instance/mysql-error.log
log_slow_queries    = /data01/mydata/instance/mysql-slow.log
long_query_time     = 5
log_warnings        = 1
log_slave_updates
log-queries-not-using-indexes
key_buffer_size     = 768M
max_allowed_packet  = 32M
table_cache         = 512
sort_buffer_size    = 8M
read_buffer_size    = 4M
read_rnd_buffer_size = 4M
myisam_max_sort_file_size = 3072M
myisam_sort_buffer_size = 256M
max_heap_table_size = 256M
join_buffer_size    = 16M
tmp_table_size      = 256M
query_cache_type    = 1
query_cache_size    = 32M
query_cache_limit   = 512K
thread_concurrency  = 8
thread_cache_size   = 8
max_connections     = 512
max_connect_errors  = 10
wait_timeout        = 28800
back_log            = 25
read-only
skip-external-locking
skip-show-database
skip-name-resolve
server-id            = 12345
master-host          = primary.somehost.somewhere
master-user          = replicationuser
master-password      = xxxxxxx
master-port          = 3306
master-connect-retry = 30
report-host          = standby.somehost.somewhere
replicate-ignore-db  = mysql
slave-skip-errors    = 1146
skip-bdb
innodb
innodb_status_file
innodb_data_home_dir = /data01/mydata/instance/innodata
innodb_data_file_path = innodat01.ibd:2G;innodat02.ibd:2G;innodat03.ibd:2G;innodat04.ibd:2G;innodat05.ibd:2G;innodat06.ibd:2G;innodat07.ibd:2G;innodat08.ibd:2G;innodat09.ibd:2G;innodat10.ibd:3808M;innodat11.ibd:2G;innoda
t12.ibd:2G;innodat13.ibd:2G;innodat14.ibd:2G;innodat15.ibd:2G:autoextend
innodb_log_group_home_dir = /data01/mydata/instance/innodblogs
innodb_buffer_pool_size = 512M
innodb_additional_mem_pool_size = 32M
innodb_log_buffer_size = 8M
innodb_log_file_size = 128M
innodb_log_files_in_group = 2
innodb_open_files = 300
innodb_flush_log_at_trx_commit = 1
innodb_rollback_on_timeout = 600
innodb_lock_wait_timeout = 50
innodb_autoextend_increment = 32

How to repeat:
Set the configuration parameter "expire_logs_days" as follows:

expire_logs_days = 7

And attempt to start the database with the 5.0.60sp1 binaries and the database will crash with signal 11.

Error Log Output:

081006 11:43:43 - mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.

key_buffer_size=0
read_buffer_size=4194304
max_used_connections=0
max_connections=512
threads_connected=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 6291456 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Suggested fix:
Unknown.
[7 Oct 2008 6:22] MySQL Verification Team
see bug #37027
[7 Oct 2008 8:45] Sveta Smirnova
Thank you for the report.

This is duplicate of bug #37027. Please use current 5.0.68 Enterprise server or wait next Community release.