maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #11849
Re: [Commits] 53d0e921794: MDEV-11094: Blackhole table updates on slave fail when row annotation is enabled
Sujatha, howdy.
Thank you for spelling it out for me!
> Hello Andrei,
...
>>>
>>> Analysis:
>>> =========
>>> Enabling "replicate_annotate_row_events" on slave, Tells the slave to write
>>> annotate rows events received from the master to its own binary log. The
>>> received annotate events are applied after the Gtid event as shown below.
>>> thd->query() will be set to the actual query received from the master, through
>>> annotate event. Annotate_rows event should not be deleted after the event is
>>> applied as the thd->query will be used to generate new Annotate_rows event
>>> during applying the subsequent Rows events.
>> [ here ]
>> The Table_map and Rows_log_event that follow do not touch thd->query().
>
> The Table_map and Rows_log_event that follow "Annotate_rows" event do
> make use of "thd->query()".
Frankly I did not expect that. Perhaps it would have not been a bad idea
to make Annotate_rows_log_event::do_apply_event() logging of
itself, which still makes sense even if the slave applier will filter
out its group's Rows_log_event:s so in this case the slave side event group
would consists of mere Annotate.
The above is a mere remark though, I have to accept what we have.
>>
>> I also suggest to check out mysqlbinlog run. There seems to be no test
>> for that though, so one needs to be written. The goal would be to prove
>> a created binlog output is as expected (e.g to include Annotate).
>
>
> Sure, I will add a test case.
Super! The patch is approved then.
Cheers,
Andrei
References