-
Frazer Clement authored
Overview -------- This feature implements new 'version 2' Binlog row events for the existing WRITE_ROW, UPDATE_ROW, DELETE_ROW events. Version 2 Binlog row events become the default. These new 'version 2' Binlog row events can transport extra information *with* each row event. A Master can optionally generate 'version 1' Binlog row events by setting the --log-bin-use-v1-row-events=1 MySQLD option/variable. This is necessary during an upgrade where the Master is upgraded before the Slave. Motivation ---------- This feature is primarily motivated by WL5353 Reflecting GCI, which uses the extra row event data to transport per-row event transaction identities. Details ------- - 3 new event types added - Existing row events renamed with _v1 suffix - log-bin-use-v1-row-events option added - Existing row event classes reused - Extra row info is one use case of new 'v2' extensible row event format. Should be no need for 'v3'. - Binlog injector Api enhanced to allow info to be passed in - THD Api enhanced to expose info to storage engine running as Slave SQL thread - mysqlbinlog tool enhanced to show extra info in --verbose mode. - New testcases : rpl_extra_row_data, log_bin_use_v1_row_events_basic - Enhanced testcase : binlog_old_versions - Various corrected / adjusted testcases
Frazer Clement authoredOverview -------- This feature implements new 'version 2' Binlog row events for the existing WRITE_ROW, UPDATE_ROW, DELETE_ROW events. Version 2 Binlog row events become the default. These new 'version 2' Binlog row events can transport extra information *with* each row event. A Master can optionally generate 'version 1' Binlog row events by setting the --log-bin-use-v1-row-events=1 MySQLD option/variable. This is necessary during an upgrade where the Master is upgraded before the Slave. Motivation ---------- This feature is primarily motivated by WL5353 Reflecting GCI, which uses the extra row event data to transport per-row event transaction identities. Details ------- - 3 new event types added - Existing row events renamed with _v1 suffix - log-bin-use-v1-row-events option added - Existing row event classes reused - Extra row info is one use case of new 'v2' extensible row event format. Should be no need for 'v3'. - Binlog injector Api enhanced to allow info to be passed in - THD Api enhanced to expose info to storage engine running as Slave SQL thread - mysqlbinlog tool enhanced to show extra info in --verbose mode. - New testcases : rpl_extra_row_data, log_bin_use_v1_row_events_basic - Enhanced testcase : binlog_old_versions - Various corrected / adjusted testcases
Loading