Quantcast
Channel: MySQL Forums - InnoDB
Viewing all articles
Browse latest Browse all 1954

Innodb crash while updating index. Long semaphore wait. (1 reply)

$
0
0
Hello all,
Sorry for this long email. I am newbie on bug reporting and I would like to share with you before I do report a bug.

While trying to execute these two statements the server crashed:
+++
use stomanin_dev;
DELETE FROM cache_bootstrap
WHERE (cid = 'bootstrap_modules')
DELETE FROM cache_bootstrap
WHERE (cid = 'system_list')
+++

while updating the index linked to expire column.

This table is related to a drupal site. It's defined like:

+++
mysql> show table status like 'cache_bootstrap'\G;
*************************** 1. row ***************************
Name: cache_bootstrap
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 6
Avg_row_length: 62805
Data_length: 376832
Max_data_length: 0
Index_length: 16384
Data_free: 0
Auto_increment: NULL
Create_time: 2012-01-30 15:06:45
Update_time: NULL
Check_time: NULL
Collation: utf8_general_ci
Checksum: NULL
Create_options:
Comment: Cache table for data required to bootstrap Drupal, may be...
1 row in set (0.01 sec)

ERROR:
No query specified

mysql> desc cache_bootstrap;
+------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| cid | varchar(255) | NO | PRI | | |
| data | longblob | YES | | NULL | |
| expire | int(11) | NO | MUL | 0 | |
| created | int(11) | NO | | 0 | |
| serialized | smallint(6) | NO | | 0 | |
+------------+--------------+------+-----+---------+-------+
5 rows in set (0.00 sec)


mysql> show indexes from cache_bootstrap from stomanin_dev;
+-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| cache_bootstrap | 0 | PRIMARY | 1 | cid | A | 6 | NULL | NULL | | BTREE | | |
| cache_bootstrap | 1 | expire | 1 | expire | A | 6 | NULL | NULL | | BTREE | | |
+-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
2 rows in set (0.00 sec)

+++

The information I got on the error log is as follows:

+++
InnoDB: error in sec index entry update in
InnoDB: index "expire" of table "stomanin_dev"."cache_bootstrap"
InnoDB: tuple DATA TUPLE: 2 fields;
0: len 4; hex 80000000; asc ;;
1: len 17; hex 626f6f7473747261705f6d6f64756c6573; asc bootstrap_modules;;

InnoDB: record PHYSICAL RECORD: n_fields 1; compact format; info bits 0
0: len 8; hex 696e66696d756d00; asc infimum ;;

TRANSACTION 2B7810B8, ACTIVE 0 sec updating or deleting
mysql tables in use 1, locked 1
2 lock struct(s), heap size 376, 1 row lock(s), undo log entries 1
MySQL thread id 10744775, OS thread handle 0x4a1e5940, query id 1627513742 drupalfe08.cern.ch 137.138.76.37 stomanin_dev updating
DELETE FROM cache_bootstrap
WHERE (cid = 'bootstrap_modules')

InnoDB: Submit a detailed bug report to http://bugs.mysql.com
InnoDB: error in sec index entry update in
InnoDB: index "expire" of table "stomanin_dev"."cache_bootstrap"
InnoDB: tuple DATA TUPLE: 2 fields;
0: len 4; hex 80000000; asc ;;
1: len 11; hex 73797374656d5f6c697374; asc system_list;;

InnoDB: record PHYSICAL RECORD: n_fields 1; compact format; info bits 0
0: len 8; hex 696e66696d756d00; asc infimum ;;

TRANSACTION 2B7810D1, ACTIVE 0 sec updating or deleting
mysql tables in use 1, locked 1
2 lock struct(s), heap size 376, 1 row lock(s), undo log entries 1
MySQL thread id 10744775, OS thread handle 0x4a1e5940, query id 1627513804 drupalfe08.cern.ch 137.138.76.37 stomanin_dev updating
DELETE FROM cache_bootstrap
WHERE (cid = 'system_list')

InnoDB: Submit a detailed bug report to http://bugs.mysql.com
InnoDB: Warning: a long semaphore wait:
--Thread 1237379392 has waited at row0upd.c line 2131 for 241.00 seconds the semaphore:
X-lock (wait_ex) on RW-latch at 0x2aab07cbb6c0 created in file buf0buf.c line 907
a writer (thread id 1237379392) has reserved it in mode wait exclusive
number of readers 1, waiters flag 1, lock_word: ffffffffffffffff
Last time read locked in file row0sel.c line 3090
Last time write locked in file /export/home/pb2/build/sb_0-4575859-1324065297.24/rpm/BUILD/mysql-5.5.20/mysql-5.5.20/storage/innobase/row/row0upd.c line 2131
InnoDB: Warning: a long semaphore wait:
--Thread 1241639232 has waited at btr0cur.c line 253 for 241.00 seconds the semaphore:
S-lock on RW-latch at 0x2aab07cbb6c0 created in file buf0buf.c line 907
a writer (thread id 1237379392) has reserved it in mode wait exclusive
number of readers 1, waiters flag 1, lock_word: ffffffffffffffff
Last time read locked in file row0sel.c line 3090
Last time write locked in file /export/home/pb2/build/sb_0-4575859-1324065297.24/rpm/BUILD/mysql-5.5.20/mysql-5.5.20/storage/innobase/row/row0upd.c line 2131
InnoDB: ###### Starts InnoDB Monitor for 30 secs to print diagnostic info:
InnoDB: Pending preads 0, pwrites 0

+++

Due to the long semaphore wait the sever reboot:

+++
InnoDB: ###### Diagnostic info printed to the standard error stream
InnoDB: Error: semaphore wait has lasted > 600 seconds
InnoDB: We intentionally crash the server, because it appears to be hung.
120330 2:54:30 InnoDB: Assertion failure in thread 1219701056 in file srv0srv.c line 2454
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.5/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
00:54:30 UTC - mysqld 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.
...

Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0 thread_stack 0x40000
/usr/sbin/mysqld(my_print_stacktrace+0x35)[0x7d08c5]
/usr/sbin/mysqld(handle_fatal_signal+0x3e1)[0x689381]
/lib64/libpthread.so.0[0x34a040eb70]
/lib64/libc.so.6(gsignal+0x35)[0x349fc30265]
/lib64/libc.so.6(abort+0x110)[0x349fc31d10]
/usr/sbin/mysqld[0x80ffc4]
/lib64/libpthread.so.0[0x34a040673d]
/lib64/libc.so.6(clone+0x6d)[0x349fcd44bd]
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains

+++

Despite that this situation has not repeat since first occurence (few hours ago), what would you recommend? I can provide further evidences if requested.
Thanks for your time!

Viewing all articles
Browse latest Browse all 1954

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>