Bug #2586 Disallow global/session/local as structured var. instance names
Submitted: 30 Jan 2004 12:10 Modified: 16 Mar 2004 2:26
Reporter: Paul DuBois Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:4.1 OS:Any (Any)
Assigned to: Sergei Glukhov CPU Architecture:Any

[30 Jan 2004 12:10] Paul DuBois
Description:
The words "global", "session", and "local" are
not disallowed as structured variable instance
names: You can use them as instance names at
server startup time.  For example:

[mysqld]
global.key_buffer_size=192K
session.key_buffer_size=192K
local.key_buffer_size=192K

This leads to weird statements like:

SELECT @@global.global.key_buffer_size;
SELECT @@global.session.key_buffer_size;
SELECT @@global.local.key_buffer_size;

Also, the following statement becomes ambiguous:
It appears to refer to the global.* structured
variable specified in the startup option, but
in fact returns the key_buffer_size value for
the default.* structured variable:

SELECT @@global.key_buffer_size;

What I would like to be able to say in the manual
is something like this: The words "global",
"session", and "local" already are used as system
variable qualifiers, so they are precluded from
being used as instance names.

Currently, I cannot say that, because it is not true.

How to repeat:
See above.

Suggested fix:
Suggested fix: disallow "global", "session",
and "local", because they are reserved for
other semantics.
[15 Mar 2004 3:06] Sergei Glukhov
Fix on dev-bugs

subj: [Fwd: Fix for bug#2586 Disallow global/session/local as structured var. instance names]
date: 2004-03-15
[16 Mar 2004 2:26] Sergei Glukhov
Fixed in 4.1 source tree