diff options
-rw-r--r-- | mysql-test/r/rpl_row_basic_11bugs.result | 3 | ||||
-rw-r--r-- | mysql-test/t/rpl_row_basic_11bugs.test | 2 | ||||
-rw-r--r-- | sql/sql_insert.cc | 27 |
3 files changed, 4 insertions, 28 deletions
diff --git a/mysql-test/r/rpl_row_basic_11bugs.result b/mysql-test/r/rpl_row_basic_11bugs.result index 9249405ac26..a5267a2bce2 100644 --- a/mysql-test/r/rpl_row_basic_11bugs.result +++ b/mysql-test/r/rpl_row_basic_11bugs.result @@ -24,9 +24,8 @@ SHOW TABLES; Tables_in_test_ignore t2 INSERT INTO t2 VALUES (3,3), (4,4); -SHOW BINLOG EVENTS; +SHOW BINLOG EVENTS FROM 102; Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 4 Format_desc 1 102 Server ver: 5.1.5-alpha-debug-log, Binlog ver: 4 master-bin.000001 102 Query 1 195 use `test`; CREATE TABLE t1 (a INT, b INT) master-bin.000001 195 Table_map 1 235 test.t1 master-bin.000001 235 Write_rows 1 282 diff --git a/mysql-test/t/rpl_row_basic_11bugs.test b/mysql-test/t/rpl_row_basic_11bugs.test index 76ff5a581c9..67fa11b76a0 100644 --- a/mysql-test/t/rpl_row_basic_11bugs.test +++ b/mysql-test/t/rpl_row_basic_11bugs.test @@ -17,7 +17,7 @@ USE test_ignore; CREATE TABLE t2 (a INT, b INT); SHOW TABLES; INSERT INTO t2 VALUES (3,3), (4,4); -SHOW BINLOG EVENTS; +SHOW BINLOG EVENTS FROM 102; sync_slave_with_master; --echo **** On Slave **** SHOW DATABASES; diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index 29df467b916..a265d32e7c2 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -1589,22 +1589,10 @@ static int write_delayed(THD *thd,TABLE *table,enum_duplicates duplic, if (thd->killed || !(row= new delayed_row(duplic, ignore, log_on))) goto err; -#if 0 - if (!query) - query_length=0; -#endif if (!(row->record= (char*) my_malloc(table->s->reclength, MYF(MY_WME)))) goto err; memcpy(row->record, table->record[0], table->s->reclength); di->set_query(query, query_length); -#if 0 - if (query_length) - { - row->query= row->record+table->s->reclength; - memcpy(row->query,query,query_length+1); - } - row->query_length= query_length; -#endif row->start_time= thd->start_time; row->query_start_used= thd->query_start_used; row->last_insert_id_used= thd->last_insert_id_used; @@ -1931,18 +1919,6 @@ bool delayed_insert::handle_inserts(void) bool using_ignore=0, using_bin_log= mysql_bin_log.is_open(); -#if 0 - /* - The actual text for the query is added to the first row in the - list. Since the row is destroyed, with all it's memory, we need - to take a copy of it to be able to log it after all rows have been - applied. - */ - uint const query_length= rows.head()->query_length; - char *const query= static_cast<char*>(my_alloca(query_length+1)); - memcpy(query, rows.head()->query, query_length); -#endif - delayed_row *row; DBUG_ENTER("handle_inserts"); @@ -2060,7 +2036,8 @@ bool delayed_insert::handle_inserts(void) pthread_mutex_unlock(&mutex); /* After releasing the mutex, to prevent deadlocks. */ - thd.binlog_query(THD::ROW_QUERY_TYPE, query, query_length, FALSE, FALSE); + if (mysql_bin_log.is_open()) + thd.binlog_query(THD::ROW_QUERY_TYPE, query, query_length, FALSE, FALSE); if ((error=table->file->extra(HA_EXTRA_NO_CACHE))) { // This shouldn't happen |