He Zhenxing wrote:
> Sven Sandberg wrote:
[snip]
> > > default:
> > > /* That's why you must write status vars in growing order of code
> */
> > > DBUG_PRINT("info",("Query_log_event has unknown status vars (first
> has\
> > > @@ -2238,6 +2250,13 @@ void Query_log_event::print_query_header
> > > print_event_info->delimiter);
> > > print_event_info->charset_database_number=
> charset_database_number;
> > > }
> > > + if (table_map_for_update)
> > > + {
> > > + char int_buf[22];
> > > + longlong10_to_str(uint8korr(&table_map_for_update), int_buf, 10);
> > > + my_b_printf(file, "SET @@session.table_map_for_update=%s%s\n",
> > > + int_buf, print_event_info->delimiter);
> > > + }
> >
> > This must be a mistake? There is no @@session.table_map_for_update
> > variable. This method is invoked only from mysqlbinlog, which is not
> > subject to --replicate-* options. So I think the above 7 lines can just
> > be removed.
> >
>
> No, this is intended, this should also work when user dump binlog by
> using mysqlbinlog and feed to mysql client program. So I think I need to
> define this system variable.
Now I think you're correct, there is no way, and we shouldn't make this
work when using mysqlbinlog to dump the binlog and feed it to mysql
client. So I'll just remove this.