Closed heehehe closed 1 year ago
Resolve #479
In RowsEvent, there are three cases in which the column value is None.
None
NULL
Since we cannot distinguish these cases, we're going to provide detail information for None value.
__none_sources
__read_values_name
dump()
CREATE TABLE test_table (col0 int, col1 varchar(10), col2 datetime); INSERT INTO test_table VALUES (1, 'abc', '2023-09-09 00:00:00'); UPDATE test_table SET col1=NULL, col2='0000-00-00 00:00:00' WHERE col0=1;
=== UpdateRowsEvent === Date: 2023-09-09T05:23:14 Log position: 1360 Event size: 37 Read bytes: 13 Table: test.test_table Affected columns: 3 Changed rows: 1 Affected columns: 3 Values: -- *col0:1=>1 + *col1:abc=>None(null) + *col2:2023-09-09 00:00:00=>None(out of datetime range)
Resolve #479
Overview
In RowsEvent, there are three cases in which the column value is
None
.NULL
Since we cannot distinguish these cases, we're going to provide detail information for
None
value.Changes
__none_sources
variable.__read_values_name
, we check detail information forNone
cases and save it to__none_sources
.dump()
executes, we check for none_sources and show them together with column name and value.Example