Bug #54782 Performance schema per thread accounting and thread cache
Submitted: 24 Jun 2010 15:31 Modified: 4 Aug 2010 20:08
Reporter: Marc ALFF Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Performance Schema Severity:S3 (Non-critical)
Version:5.5.3-m3, 5.5.4-m3 OS:Any
Assigned to: Marc ALFF CPU Architecture:Any

[24 Jun 2010 15:31] Marc ALFF
Description:
Reported by Ranger.

When the server calls cache_thread(),
a posix thread running connection 1 is parked,
waits for a user job to pick up (THD),
then runs the job from connection 2.

The performance schema instrumentation then leaks from connection 1 to 2,
and continues to accumulate statistics on the old connection.

How to repeat:
Code review in mysqld.cc, cache_thread.
[25 Jun 2010 7:57] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/112172

3271 Marc Alff	2010-06-25
      Bug#54782 Performance schema per thread accounting and thread cache
      
      Before this fix, when using the performance schema with the thread cache,
      a thread executing connection A, then cached, then executing connection B
      would account B actions with the statistics for A.
      
      With this fix:
      - the instrumentation for connection A is cleaned up when A completes,
      - a new instrumentation for connection B is created when B is executed
        from a cached thread.
[25 Jun 2010 21:03] Christopher Powers
Bug fix reviewed.
[28 Jun 2010 23:50] Marc ALFF
Pushed into mysql-next-mr-bugfixing
[16 Jul 2010 12:51] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/113753

3120 Marc Alff	2010-07-16
      Bug#54782 Performance schema per thread accounting and thread cache
      
      Backport from mysql-next-mr (5.6) to mysql-trunk (5.5)
[16 Jul 2010 19:29] Marc ALFF
Now also queued in mysql-trunk-bugfixing (5.5)
[23 Jul 2010 12:25] Bugs System
Pushed into mysql-trunk 5.5.6-m3 (revid:alik@sun.com-20100723121820-jryu2fuw3pc53q9w) (version source revid:vasil.dimov@oracle.com-20100531152341-x2d4hma644icamh1) (merge vers: 5.5.5-m3) (pib:18)
[23 Jul 2010 12:32] Bugs System
Pushed into mysql-next-mr (revid:alik@sun.com-20100723121929-90e9zemk3jkr2ocy) (version source revid:vasil.dimov@oracle.com-20100531152341-x2d4hma644icamh1) (pib:18)
[29 Jul 2010 18:52] Paul DuBois
Noted in 5.5.6 changelog.

Performance Schema event collection for a thread could "leak" from
one connection to another if the thread was used for one connection,
then cached, then reused for another connection.
[4 Aug 2010 8:07] Bugs System
Pushed into mysql-trunk 5.6.1-m4 (revid:alik@ibmvm-20100804080001-bny5271e65xo34ig) (version source revid:vasil.dimov@oracle.com-20100531152341-x2d4hma644icamh1) (merge vers: 5.5.5-m3) (pib:18)
[4 Aug 2010 8:23] Bugs System
Pushed into mysql-trunk 5.6.1-m4 (revid:alik@ibmvm-20100804081533-c1d3rbipo9e8rt1s) (version source revid:vasil.dimov@oracle.com-20100531152341-x2d4hma644icamh1) (merge vers: 5.5.5-m3) (pib:18)
[4 Aug 2010 20:08] Paul DuBois
Bug is not present in any released 5.6.x version.