Bug #60032 assertions with trx->mysql_thread_id == os_thread_get_curr_id()
Submitted: 9 Feb 2011 1:35 Modified: 2 Dec 2012 17:43
Reporter: Vladislav Vaintroub Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S3 (Non-critical)
Version:5.6.2 OS:Any
Assigned to: CPU Architecture:Any

[9 Feb 2011 1:35] Vladislav Vaintroub
Description:
There is a bunch of assertions in Innodb code that check that thread id remembered at the start of transaction remains the same throughout the transaction.

It is not going to work with any threadpool implementation, where thread id is potentially changing with each command

How to repeat:
examine all 

trx->mysql_thread_id == os_thread_get_curr_id()
in innodb code

(row0merge.c, row0sel.c, row0mysql.c)

As far as I can tell mysql_thread_id is not used for any real work and serves for this assertion only.

Suggested fix:
Remove the assertion.
[18 Jul 2011 22:25] MySQL Verification Team
Thank you for the bug report.
[2 Dec 2012 17:43] Vladislav Vaintroub
Was silently fixed in the past