Sheeri, Gu Lei,
SHOW PROCESSLIST only knows about MySQL table locks.
To list row locks, you need to use innodb_lock_monitor:
http://dev.mysql.com/doc/refman/5.0/en/innodb-monitor.html
Best regards,
Heikki
Oracle Corp./Innobase Oy
InnoDB - transactions, row level locking, and foreign keys for MySQL
InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up MyISAM
tables
http://www.innodb.com/order.php
----- Original Message -----
From: ""sheeri kritzer"" <[EMAIL PROTECTED]>
Newsgroups: mailing.database.myodbc
Sent: Friday, April 07, 2006 10:23 PM
Subject: Re: How could I know which transaction or thread hold the lock
While the query is still running, type
mysql> show processlist
or
mysql> show full processlist
find the query(ies) with the "State" column having a value of "Locked"
-Sheeri
On 4/7/06, 古雷 <[EMAIL PROTECTED]> wrote:
Hello:
How could I know which transaction or thread hold the lock?
For example:
show innodb status\G
---TRANSACTION 0 78076313, ACTIVE 3906 sec, process no 12729, OS thread
id 2952076208 starting index read
mysql tables in use 1, locked 1
LOCK WAIT 2 lock struct(s), heap size 1024
MySQL thread id 268, query id 40997 localhost root Updating
UPDATE CORPSMSINFO SET PERMISSIONS='10000000000000000000000000000000'
WHERE CUSTOMERID='1000000010A'
------- TRX HAS BEEN WAITING 13 SEC FOR THIS LOCK TO BE GRANTED:
RECORD LOCKS space id 0 page no 20032 n bits 192 index `PRIMARY` of table
`ea191/CORPSMSINFO` trx id 0 78076313 lock_mode X locks rec but not gap
waiting
Record lock, heap no 122 PHYSICAL RECORD: n_fields 19; compact format;
info bits 0
0: len 11; hex 3130303030303030313041; asc 1000000010A;; 1: len 6; hex
000004a755e1; asc U ;; 2: len 7; hex 000000562927be; asc V)' ;; 3:
len 3; hex 415350; asc ASP;; 4: len 4; hex 4435c9e1; asc D5 ;; 5: len 5;
hex 61646d696e; asc admin;; 6: len 4; hex 4434cb9b; asc D4 ;; 7: len 4;
hex 4434cb9b; asc D4 ;; 8: len 1; hex 30; asc 0;; 9: SQL NULL; 10: SQL
NULL; 11: SQL NULL; 12: len 4; hex 4434cb9b; asc D4 ;; 13: len 4; hex
4434cb9b; asc D4 ;; 14: len 1; hex 30; asc 0;; 15: len 2; hex 3220; asc
2 ;; 16: SQL NULL; 17: len 30; hex
313030303030303030303030303030303030303030303030303030303030; asc
100000000000000000000000000000;...(truncated); 18: len 4; hex 80000000;
asc ;;
------------------
How could I find which one hold that lock?
Regards,
gu lei
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:
http://lists.mysql.com/[EMAIL PROTECTED]
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]