ORDER BY on sys_replication_log table causes InnoDB crash

Bug #723389 reported by David Shrewsbury
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Drizzle
Fix Released
Critical
Andrew Hutchings
7.0
Fix Released
Critical
Andrew Hutchings

Bug Description

Working from trunk revno 2191. Only seen this once so far while querying the master server from another running the slave plugin...

InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: 127 rollback segment(s) active.
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
Listening on /mnt/disk2/shrews/Devel/repos/drizzle/master/tests/dbqp_work/testbot0/server0/var/server0.sock
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Deadlock found when trying to get lo
ck; try restarting transaction
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Deadlock found when trying to get lo
ck; try restarting transaction
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Deadlock found when trying to get lo
ck; try restarting transaction
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Deadlock found when trying to get lo
ck; try restarting transaction
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Deadlock found when trying to get lock; try restarting transaction
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Deadlock found when trying to get lock; try restarting transaction
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled: Sort aborted
110222 16:13:58 InnoDB: Assertion failure in thread 140227776706304 in file plugin/innobase/handler/ha_innodb.cc line 4042
InnoDB: Failing assertion: buff <= buff_start + buff_len
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html
InnoDB: about forcing recovery.
110222 16:13:58 - drizzled got signal 6;
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.

read_buffer_size=131072
max_used_connections=5
connection_count=2
It is possible that drizzled could use up to
(read_buffer_size + sort_buffer_size)*thread_count
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Number of stack frames obtained: 28
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6a0a37]
()
gsignal()
abort()
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x7f1a2a]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x7f45d3]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x55523d]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x55455a]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6cf6b8]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x5e900d]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6c4a40]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6c4311]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6c07eb]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x712d37]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6c02b3]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6c10dd]
/mnt/disk2/shrews/Devel/repos/drizzle/master/drizzled/.libs/lt-drizzled() [0x6bfb6d]
drizzled::Session::executeStatement()
drizzled::Session::run()
()
()
()
()
()
thread_proxy()
()
clone()

Related branches

Revision history for this message
David Shrewsbury (dshrews) wrote :

This query seems to cause it. Seems related to the ORDER BY:

 select id, commit_id, end_timestamp from data_dictionary.sys_replication_log order by commit_id;

summary: - InnoDB crash at ha_innodb.cc line 4042
+ ORDER BY on sys_replication_log table causes InnoDB crash
Revision history for this message
Andrew Hutchings (linuxjedi) wrote :

Is the SHOW CREATE TABLE for SYS_REPLICATION_LOG showing REPLICATE=FALSE? (or whatever the flag is?)

Revision history for this message
Andrew Hutchings (linuxjedi) wrote :

ignore that comment... not relevant

Changed in drizzle:
assignee: nobody → Andrew Hutchings (linuxjedi)
Revision history for this message
Andrew Hutchings (linuxjedi) wrote :

crash is due to the index sizes in the proto are too small for the index parts (my bad!).

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.