mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
a6dd827a4d
Problem: ======== SHOW BINLOG EVENTS FROM <pos> causes a variety of failures, some of which are listed below. It is not a race condition issue, but there is some non-determinism in it. Analysis: ======== "show binlog events from <pos>" code considers the user given position as a valid event start position. The code starts reading data from this event start position onwards and tries to map it to a set of known events. Each event has a specific event structure and asserts have been added to ensure that read event data satisfies the event specific requirements. When a random position is supplied to "show binlog events command" the event structure specific checks will fail and they result in assert. Fix: ==== The fix is split into different parts. Each part addresses either an ASAN issue or an assert/crash. **Part1: Checksum based position validation when checksum is enabled** Using checksum validate the very first event read at the user specified position. If there is a checksum mismatch report an appropriate error for the invalid event. |
||
---|---|---|
.. | ||
archive | ||
binlog | ||
binlog_encryption | ||
csv | ||
encryption | ||
engines | ||
federated | ||
funcs_1 | ||
funcs_2 | ||
galera | ||
galera_3nodes | ||
handler | ||
heap | ||
innodb | ||
innodb_fts | ||
innodb_zip | ||
jp | ||
large_tests | ||
maria | ||
mariabackup | ||
mtr/t | ||
mtr2 | ||
multi_source | ||
optimizer_unfixed_bugs | ||
parts | ||
percona | ||
perfschema | ||
perfschema_stress | ||
plugins | ||
roles | ||
rpl | ||
storage_engine | ||
stress | ||
sys_vars | ||
unit | ||
vcol | ||
wsrep |