Bug #48561 statements recorded in general log should be concluded

Submitted: 5 Nov 2009 10:36 Modified: 5 Nov 2009 11:50
Reporter: Peter Laursen (Basic Quality Contributor) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: General Severity:S2 (Serious)
Version:any OS:Any
Assigned to: CPU Architecture:Any
Tags: qc

[5 Nov 2009 10:36] Peter Laursen
Description:
Start server 

How to repeat:
1) start server with 

--general_log
--slow_query_log
--log-queries-not-using-indexes

2) next

mysql> use test;
mysql> select 1;
mysql> select *
    -> from
    -> test.blah;
mysql> select 99;
mysql>

3) inspect logs

Slow log contains:
..
select *
from
test.blah;
..

General log contains:
..
Query	select *
from
test.blah
..

(note the absence of the DELIMITER (" ; ") in general log.

(bonus question: why is "SELECT <a_constant>" not recorded in general log?)

Suggested fix:
The absence of the DELIMITER makes automated parsing and analysis of the general log practically impossible with multi-line statements.

Would it break anything to add that " ; " ?
[5 Nov 2009 10:47] Peter Laursen
oops .. 

'description' should have read like 'statements recorded in general log should be concluded' (just like synopsis).
[5 Nov 2009 11:22] Peter Laursen
Please ignore 'bonus question'. My mistake!
[5 Nov 2009 11:50] Valeriy Kravchuk
I had verified this with 5.1.41. But I do not know why this is declared a bug. OK, different logs log statements in a different way, using different formats. It is intended, well known and is not a problem by itself, although can be declared inconsistent.

I'd say this a valid feature request, to add ';' delimiter to queries in the general query log, but NOT a bug.

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.054 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.