Description:
MySQL's binary log records changes for replication and recovery, but using those changes in applications requires substantial interpretation outside MySQL, either in application code or through an external tool. This includes decoding row values, associating them with columns and interpreting DDL to follow schema evolution.
mysqlbinlog already supports inspection and replay. Its verbose row output helps users inspect changes, but does not provide a structured, application-readable change stream that can also be replayed through MySQL's parallel replication applier.
Users who need both application consumption and replay into MySQL need to preserve more than row values. Schema changes must remain aligned with the data they affect, and replay must preserve transaction contents, boundaries and original GTID identity. Reconstructing SQL writes from decoded changes can also introduce behavior different from native row application, such as firing destination triggers again.
The requested enhancement is a readable, lossless representation of recorded changes that exposes row values and structured schema-change information while retaining compatible DDL for replay. The same stream should be consumable by applications and replayable through MySQL's parallel replication applier, preserving transaction contents, boundaries, original GTID identity and native row-application semantics.
It should retain stream continuation and allow replay to resume based on transactions already committed on the destination.
How to repeat:
N/A
Suggested fix:
N/A