~martinarrieta/mysql-fabric/bug72508

Viewing all changes in revision 223.

  • Committer: Alfranio Correia
  • Date: 2014-03-25 06:47:35 UTC
  • Revision ID: alfranio.correia@oracle.com-20140325064735-a2p778b798s45b8z
Tags: release-1.4.2
BUG#72117: BUG#18454582: SCHEDULER DOES NOT NOTIFY ALL PROCEDURES THAT ARE FREE TO GO AFTER A RELEASE

The scheduler is not notifying all procedures that were blocked by a procedure
that has had its locks released. The current algorithm checks all the queues
for the objects locked by the procedure which has finished but does not check
that some procedures are at head of the queue already for other objects.

For example,

   ['object_1'] = [procedure_1, procedure_2]
   ['object_2'] = [procedure_2]

If "procedure_1" finishes the execution, the scheduler does notify that
"procedure_2" can continue its execution because only the queue for
"object_1" has changed after releasing the locks for "procedure_1".

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: