|
|||||||||||
|
bk commit into 5.1 tree (davi:1.2614)
From: Davi Arnaut <davi(at)mysql.com>
Date: Sat Sep 29 2007 - 15:04:39 EDT
ChangeSet@1.2614, 2007-09-29 16:04:31-03:00, davi@moksha.local +1 -0 The fix for BUG 21136 (ChangeSet@1.2611.1.1) introduced a regression that caused a few tests to fail because the thd->extra_lock wasn't being set to NULL after the table was unlocked. This poses a serious problem because later attempts to access thd->extra_lock (now a dangling pointer) will probably result in a crash (undefined behavior) -- and that's what actually happens in some test cases. The solution is to set the select_create::m_plock pointee to NULL, which means that thd->extra_lock is set to NULL when the lock data is not for a temporary table. sql/sql_insert.cc@1.298, 2007-09-29 16:04:24-03:00, davi@moksha.local +4 -2 Set the m_plock pointee to NULL, thus avoiding a dangling thd->extra_lock pointer in some cases. diff -Nrup a/sql/sql_insert.cc b/sql/sql_insert.cc --- a/sql/sql_insert.cc 2007-09-28 18:25:42 -03:00 +++ b/sql/sql_insert.cc 2007-09-29 16:04:24 -03:00 } return tmp; @@ -3691,7 +3692,8 @@ void select_create::abort()
if (m_plock)
} if (table) -- MySQL Code Commits Mailing List For list archives: http://lists.mysql.com/commits To unsubscribe: http://lists.mysql.com/commits?unsub=lists@pantek.comReceived on Sat Sep 29 15:04:54 2007 This archive was generated by hypermail 2.1.8 : Sun Oct 07 2007 - 09:45:30 EDT |
||||||||||
|
|||||||||||