Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-09-04 Thread Pavel Ivanov
On Tue, Sep 3, 2013 at 3:55 AM, Kristian Nielsen kniel...@knielsen-hq.org wrote: If you are interested in helping with testing this, I can write a patch later, but I need a way to test it without having to spend unreasonable amounts of time on it. Sure, I'll be happy to test. Ok, great.

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-09-04 Thread Kristian Nielsen
Pavel Ivanov piva...@google.com writes: Thanks. This patch works for me. Ok, I'll push it then. Note that there's also Query_log_event::peek() that should have the same dependency on common_header_len. It's hard (if at all possible) for me to experience that code path in my tests, but for

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-09-03 Thread Kristian Nielsen
Pavel Ivanov piva...@google.com writes: Why not change Format_description_log_event::write()? It seems actually that it will be more correct if we change it. I made the following change (line numbers may be off) and it worked: Agree, that sounds like a good idea, thanks! If you are

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-30 Thread Kristian Nielsen
Pavel Ivanov piva...@google.com writes: The attached patch doesn't work properly because the format description event it saves is different from what master has sent. It has different number_of_event_types and potentially it has garbage (or incomplete data) in post_header_len. Aha, so it's

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-30 Thread Pavel Ivanov
On Fri, Aug 30, 2013 at 1:44 AM, Kristian Nielsen kniel...@knielsen-hq.org wrote: Pavel Ivanov piva...@google.com writes: The attached patch doesn't work properly because the format description event it saves is different from what master has sent. It has different number_of_event_types and

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-29 Thread Kristian Nielsen
Pavel Ivanov piva...@google.com writes: But this must be the same problem with normal replication? Whenever the slave decides to rotate the relay log, it will write a format description event created by itself with no following format description created on the master. So it seems this must

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-29 Thread Pavel Ivanov
Krisitan, The attached patch doesn't work properly because the format description event it saves is different from what master has sent. It has different number_of_event_types and potentially it has garbage (or incomplete data) in post_header_len. And regarding the fix to Gtid_log_event that we

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-28 Thread Kristian Nielsen
Pavel Ivanov piva...@google.com writes: You have the following comment in the queue_event() in sql/slave.cc: /* Do not queue any format description event that we receive after a reconnect where we are skipping over a partial event group received before the reconnect.

Re: [Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-28 Thread Pavel Ivanov
So suppose now we have a two-statement transaction: BEGIN; UPDATE t1 SET a=a+1; UPDATE t2 SET b=b-1; COMMIT and that slave IO thread reconnects in the middle (between the two updates). First we receive the BEGIN and the first UPDATE and write it to relay log 1: Format_Description

[Maria-developers] Incorrect format description event skipping in queue_event()

2013-08-27 Thread Pavel Ivanov
Kristian, You have the following comment in the queue_event() in sql/slave.cc: /* Do not queue any format description event that we receive after a reconnect where we are skipping over a partial event group received before the reconnect. (If we queued such an event,