← Back to team overview

maria-developers team mailing list archive

Re: [MariaDB/server] MDEV-11065 - Compressed binary log (#247)

 

vinchen <notifications@xxxxxxxxxx> writes:

> The new code is here:
> https://github.com/vinchen/server/commits/GCSAdmin-10.2-binlog-compressed2-2

> And added  two fixed:
>     1.Avoid overflowing buffers in case of corrupt events
>     2.Check the compressed algorithm.

Looks fine, thanks for fixing this.

I have now merged and pushed this to MariaDB 10.2.

> > Rows_log_event::write_data_body(). I *think* the reason for that is that
> > the
> > SQL thread never sees the compressed events (they are uncompressed by the
> > IO
> > thread), but I would like your confirmation that my understanding is
> > correct.

> > 3. Did you think about testing that BINLOG statements with compressed

> As mentioned above, the compressed events would uncompressed in constructor
> in SQL thread.

Right, thanks, I understand now.

So the BINLOG statements in the output of mysqlbinlog have the uncompressed
data. This makes sense, just like the SQL queries are uncompressed before
being output by mysqlbinlog.

So in fact, one change I suggested is wrong, to accept compressed event
types in BINLOG statements. So I reverted this change again, and also added
some test cases:

  https://github.com/MariaDB/server/commit/56a041cde657e5618c519a3c50e8075136d4a1ce

BTW, I think this is recently merged code (from the delayed replication
feature) that would not have appeared in your original patch.

Thanks for the explanation to help me understand this.


I also fixed a .result file - this is a failure that would only show up when
running the test suite with --embedded:

  https://github.com/MariaDB/server/commit/3c0ff6153f75bb8e63c08ff3c82823551297a155

So I think everything should be fine now and this should appear in MariaDB
10.2.3, if I understand correctly.

Once again thanks for the patch. It was a pleasure to see a replication
addition that was so well done, and with so much attention to detail.

 - Kristian.