Bug #104 INSERT DELAYED does not care about SQL_LOG_BIN=0
Submitted: 26 Feb 2003 14:33 Modified: 6 Mar 2003 15:03
Reporter: Guilhem Bichot
Status: Closed
Category:Server Severity:S3 (Non-critical)
Version:4.0 OS:Any (all)
Assigned to: Target Version:

[26 Feb 2003 14:33] Guilhem Bichot
Description:
Doing SQL_LOG_BIN=0 does not prevent an INSERT DELAYED of going into the binlog.

How to repeat:
USE test;
RESET MASTER;
SET SQL_LOG_BIN=0; #this should disable binlogging
INSERT DELAYED INTO t VALUES(1);
SELECT * FROM t;
SHOW BINLOG EVENTS;
#and you can see the INSERT in the binlog

Suggested fix:
This is an understandable bug as the thread which writes the INSERT to the binlog is not
the thread which issued INSERT DELAYED it and which had SQL_LOG_BIN=0.
Probably any INSERT DELAYED should be queued together with a boolean 'should_be_logged',
this way the delayed_insert thread would know.
[6 Mar 2003 15:03] Guilhem Bichot
Thank you for your bug report. This issue has been fixed in the latest
development tree for that product. You can find more information about
accessing our development trees at 
    http://www.mysql.com/doc/en/Installing_source_tree.html