Bug #33587 Bug #8367 is not fixed on mysql 5.1.22
Submitted: 30 Dec 2007 13:02 Modified: 4 Jan 2008 13:46
Reporter: Gleb Pakhareno Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:5.1.22 OS:Linux
Assigned to: CPU Architecture:Any

[30 Dec 2007 13:02] Gleb Pakhareno
Description:
Slow query log and general log does not show parameters of prepared statements.

How to repeat:
To repeat use test cases from #8367, #9334
[4 Jan 2008 13:46] Susanne Ebrecht
Neither with CLI nor with C API I can reproduce this. General log will show the parameters of prepared statements.

Look here (CLI and log entries):

mysql> create table t(id serial, num integer, t text, primary key(id));
Query OK, 0 rows affected (0.03 sec)

mysql> insert into t(num, t) values(1,'abc');
Query OK, 1 row affected (0.03 sec)

080104 12:38:09    1 Query      insert into t(num, t) values(1,'abc')

mysql> prepare mystmt from 'insert into t(num, t) values (?,?)';
Query OK, 0 rows affected (0.00 sec)
Statement prepared

080104 12:47:52    2 Query      prepare mystmt from 'insert into t(num, t) value
s (?,?)'
                    2 Prepare   [1] insert into t(num, t) values (?,?)

mysql> set @nr = 2;
Query OK, 0 rows affected (0.00 sec)

mysql> set @txt = 'def';
Query OK, 0 rows affected (0.00 sec)

080104 12:48:24    2 Query      set @nr = 2
080104 12:48:31    2 Query      set @txt = 'def'

mysql> execute mystmt using @nr, @txt;
Query OK, 1 row affected (0.00 sec)

080104 12:48:57    2 Query      execute mystmt using @nr, @txt
                    2 Execute   [1] insert into t(num, t) values (2,'def')

Log entries for the attached C-API test:
080104 14:37:08    7 Connect    miracee@localhost on miracee
                    7 Query     select version()
                    7 Query     create table if not exists t(id serial,num integ
er,t text,primary key(id))
                    7 Query     insert into t(num,t) values (1,'abc')
                    7 Prepare   [1] insert into t(num,t) values(?,?)
                    7 Execute   [1] insert into t(num,t) values(2,'def')
                    7 Query     drop table if exists t

My my.cnf:
[mysqld]
port=3351
...
log-output=FILE
log=/MYPATH/var/my.log
...
[4 Jan 2008 13:47] Susanne Ebrecht
C API test for verifying this with using C API

Attachment: bug33587.c (text/x-csrc), 4.52 KiB.