Bug #33358 Plugin enum variables can't be set from command line
Submitted: 19 Dec 2007 6:16 Modified: 15 Apr 2008 2:11
Reporter: Oleksandr Byelkin Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:5.1 OS:Any
Assigned to: Antony Curtis CPU Architecture:Any
Tags: plugin

[19 Dec 2007 6:16] Oleksandr Byelkin
Description:
value of variable does not change if set it from command line.

How to repeat:
1. have bug#33345 fixed.
2. start mysqld with example plugin loaded from the start, for example:
(from /home/bell/mysql/bk/work-variable-5.1/mysql-test directory after running some tests):
/home/bell/mysql/bk/work-variable-5.1/sql/mysqld --no-defaults --skip-grant-tables --basedir=/home/bell/mysql/bk/work-variable-5.1/mysql-test --datadir=/home/bell/mysql/bk/work-variable-5.1/mysql-test/var/master-data --loose-skip-innodb --loose-skip-ndbcluster --tmpdir=. --core-file --language=/home/bell/mysql/bk/work-variable-5.1/sql/share/english --character-sets-dir=/home/bell/mysql/bk/work-variable-5.1/sql/share/charsets --plugin_dir=/home/bell/mysql/bk/work-variable-5.1/storage/example/.libs/ --plugin_load=ha_example.so
3. check the variable value:
mysql> select @@global.example_enum_var;
+---------------------------+
| @@global.example_enum_var |
+---------------------------+
| e1                        |
+---------------------------+
1 row in set (0.00 sec)
4. restart the server with variable set:
/home/bell/mysql/bk/work-variable-5.1/sql/mysqld --no-defaults --skip-grant-tables --basedir=/home/bell/mysql/bk/work-variable-5.1/mysql-test --datadir=/home/bell/mysql/bk/work-variable-5.1/mysql-test/var/master-data --loose-skip-innodb --loose-skip-ndbcluster --tmpdir=. --core-file --language=/home/bell/mysql/bk/work-variable-5.1/sql/share/english --character-sets-dir=/home/bell/mysql/bk/work-variable-5.1/sql/share/charsets --plugin_dir=/home/bell/mysql/bk/work-variable-5.1/storage/example/.libs/ --plugin_load=ha_example.so --example-enum-var=e2
5. check that value of the variable is still e1
[19 Dec 2007 20:41] MySQL Verification Team
Thank you for the bug report.

[miguel@amanhecer 5.1]$ bin/mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.23-rc-debug Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> select @@global.example_enum_var;
+---------------------------+
| @@global.example_enum_var |
+---------------------------+
| e1                        | 
+---------------------------+
1 row in set (0.00 sec)

mysql> exit
Bye
[miguel@amanhecer 5.1]$ bin/mysqladmin -uroot shutdown
[miguel@amanhecer 5.1]$ bin/mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.23-rc-debug Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> select @@global.example_enum_var;
+---------------------------+
| @@global.example_enum_var |
+---------------------------+
| e1                        | 
+---------------------------+
1 row in set (0.00 sec)

mysql>
[21 Jan 2008 20:02] 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/41088

ChangeSet@1.2655, 2008-01-21 12:01:21-08:00, acurtis@xiphis.org +4 -0
  Bug#33358
    "Plugin enum variables can't be set from command line"
    fix crash of LOCK_plugins mutex when loading plug-ins from command line.
    fix off-by-one bug when loading multiple plug-ins from the command line.
    initialize command line handling for ENUM and SET plugin variable types.
[23 Jan 2008 5:00] 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/41132

ChangeSet@1.2655, 2008-01-22 20:59:46-08:00, acurtis@xiphis.org +4 -0
  Bug#33358
    "Plugin enum variables can't be set from command line"
    fix crash of LOCK_plugins mutex when loading plug-ins from command line.
    fix off-by-one bug when loading multiple plug-ins from the command line.
    initialize command line handling for ENUM and SET plugin variable types.
[26 Jan 2008 0:05] 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/41273

ChangeSet@1.2659, 2008-01-25 16:05:15-08:00, acurtis@xiphis.org +4 -0
  Bug#33358
    "Plugin enum variables can't be set from command line"
    fix crash of LOCK_plugins mutex when loading plug-ins from command line.
    fix off-by-one bug when loading multiple plug-ins from the command line.
    initialize command line handling for ENUM and SET plugin variable types.
[26 Jan 2008 2:41] Antony Curtis
Queued to 5.1-engines and 6.0-engines
[27 Mar 2008 11:21] Bugs System
Pushed into 5.1.24-rc
[27 Mar 2008 17:53] Bugs System
Pushed into 6.0.5-alpha
[2 Apr 2008 16:01] Jon Stephens
Pushed into 5.1.23-ndb-6.3.11.
[15 Apr 2008 2:11] Paul DuBois
Noted in 5.1.24, 6.0.5 changelogs.

ENUM- or SET-valued plugin variables could not be set from the
command line.