File tree 2 files changed +8
-10
lines changed
2 files changed +8
-10
lines changed Original file line number Diff line number Diff line change 4
4
OUT_OF_DATETIME2_RANGE = "out of datetime2 range"
5
5
EMPTY_SET = "empty set"
6
6
COLS_BITMAP = "cols bitmap"
7
+ JSON_PARTIAL_UPDATE = "same with before values"
Original file line number Diff line number Diff line change @@ -289,7 +289,10 @@ def __read_values_name(
289
289
elif column .type == FIELD_TYPE .GEOMETRY :
290
290
return self .packet .read_length_coded_pascal_string (column .length_size )
291
291
elif column .type == FIELD_TYPE .JSON :
292
- return self .packet .read_binary_json (column .length_size , is_partial )
292
+ value = self .packet .read_binary_json (column .length_size , is_partial )
293
+ if not value and is_partial :
294
+ self .__none_sources [column .name ] = NONE_SOURCE .JSON_PARTIAL_UPDATE
295
+ return value
293
296
else :
294
297
raise NotImplementedError (f"Unknown MySQL column type: { column .type } " )
295
298
@@ -1172,23 +1175,17 @@ def _fetch_one_row(self):
1172
1175
row ["before_values" ] = self ._read_column_data (
1173
1176
self .columns_present_bitmap , row_image_type
1174
1177
)
1178
+ row ["before_none_sources" ] = self ._get_none_sources (row ["before_values" ])
1175
1179
row_image_type = EnumRowImageType .UpdateAI
1176
1180
row ["after_values" ] = self ._read_column_data (
1177
1181
self .columns_present_bitmap2 , row_image_type
1178
1182
)
1183
+ row ["after_none_sources" ] = self ._get_none_sources (row ["after_values" ])
1179
1184
1180
1185
return row
1181
1186
1182
1187
def _dump (self ):
1183
- print ("Values:" )
1184
- for row in self .rows :
1185
- print ("--" )
1186
- for key in row ["before_values" ]:
1187
- print (
1188
- "*%s:%s=>%s"
1189
- % (key , row ["before_values" ][key ], row ["after_values" ][key ])
1190
- )
1191
-
1188
+ super ()._dump ()
1192
1189
1193
1190
def find_charset (charset_id , dbms = "mysql" ):
1194
1191
encode = None
You can’t perform that action at this time.
0 commit comments