Sergei Golubchik, 17.03.2008 16:12:
> On Mar 12, Ingo Strüwing wrote:
> How would you, without a global variable, synchronize with threads that
> are not connection threads ?
I didn't have it in mind when designing the feature. The use cases I had
in mind included connection threads only.
Do you want to have it in the initial implementation? Or can we take it
as a potential extension for later? Anyway precise rules must be
specified which threads are affected by setting the GLOBAL variable and
in which order global and session actions are to be executed.
Possible problems with GLOBAL synchronization could be:
- Every thread is affected, even the requesting one. Precautions must be
taken that only the right thread executes the action.
- Mikael told me that DBAs use to experiment with everything, even on a
production system. Blocking the own thread forever is bad enough, but
allowing for blocking everything sounds even worse.
>> RESET clears everything, local and global? Or global
>> only if no local action is present?
> just like @@global.debug works. CLEAR and RESET on the global level
> affect only that global array of actions you've described above.
> Local arrays are not affected.
Ok. That makes sense. But admittedly the effective behavior of
@@global.debug has not made it into my head yet. I usually end up
setting everything in every thread to get what I want.
Ingo Strüwing, Senior Software Developer
MySQL GmbH, Dachauer Str. 37, D-80335 München
Geschäftsführer: Kaj Arnö - HRB München 162140