On 1/13/09 3:57 PM, Sergei Golubchik wrote:
> Hi, Davi!
>
> On Jan 06, Davi Arnaut wrote:
>> # At a local mysql-5.1-bugteam repository of davi
>>
>> 2728 Davi Arnaut 2009-01-06
>> Bug#40536: SELECT is blocked by INSERT DELAYED waiting on
>> upgrading lock, even with low_pri
>>
>> The problem is that there is no mechanism to control whether a
>> delayed insert takes a high or low priority lock on a table.
>>
>> The solution is to add a new global variable which specifies
>> whether a delayed insert thread should take high or low priority
>> locks. The name of the variable is low_priority_delayed_updates.
>
> I think this new feature is uncalled for.
> Why don't you use low_priority_updates ?
>
Because the session value of the variable wouldn't be meaningful, which
requires the global value to be used and such change could create some
confusion for cases where the session value of the variable differs from
the global one.
Another thing is that one won't know the point in time that a “handler”
thread will acquire the lock, so the variable will probably stay set for
long periods.. which conflicts with the finer grained behavior of
low_priority_updates.
My thinking is that the intrinsic details of this are better served by a
new variable. Besides, it was a suggestion by one of our support
engineers. But either way will do it.. final word is yours.
Regards,
-- Davi Arnaut