@@ -24,7 +24,7 @@ def __init__(self, from_packet, event_size, table_map, ctl_connection, **kwargs)
2424 self .__ignored_tables = kwargs ["ignored_tables" ]
2525 self .__only_schemas = kwargs ["only_schemas" ]
2626 self .__ignored_schemas = kwargs ["ignored_schemas" ]
27- self .none_sources = {}
27+ self .__none_sources = {}
2828
2929 #Header
3030 self .table_id = self ._read_table_id ()
@@ -129,11 +129,11 @@ def __read_values_name(self, column, null_bitmap, null_bitmap_index, cols_bitmap
129129 if BitGet (cols_bitmap , i ) == 0 :
130130 # This block is only executed when binlog_row_image = MINIMAL.
131131 # When binlog_row_image = FULL, this block does not execute.
132- self .none_sources [name ] = 'cols_bitmap'
132+ self .__none_sources [name ] = 'cols_bitmap'
133133 return None
134134
135135 if self ._is_null (null_bitmap , null_bitmap_index ):
136- self .none_sources [name ] = 'null'
136+ self .__none_sources [name ] = 'null'
137137 return None
138138
139139 if column .type == FIELD_TYPE .TINY :
@@ -190,14 +190,14 @@ def __read_values_name(self, column, null_bitmap, null_bitmap_index, cols_bitmap
190190 elif column .type == FIELD_TYPE .DATETIME :
191191 ret = self .__read_datetime ()
192192 if ret is None :
193- self .none_sources [name ] = 'out of datetime range'
193+ self .__none_sources [name ] = 'out of datetime range'
194194 return ret
195195 elif column .type == FIELD_TYPE .TIME :
196196 return self .__read_time ()
197197 elif column .type == FIELD_TYPE .DATE :
198198 ret = self .__read_date ()
199199 if ret is None :
200- self .none_sources [name ] = 'out of date range'
200+ self .__none_sources [name ] = 'out of date range'
201201 return ret
202202 elif column .type == FIELD_TYPE .TIMESTAMP :
203203 return datetime .datetime .fromtimestamp (
@@ -207,7 +207,7 @@ def __read_values_name(self, column, null_bitmap, null_bitmap_index, cols_bitmap
207207 elif column .type == FIELD_TYPE .DATETIME2 :
208208 ret = self .__read_datetime2 (column )
209209 if ret is None :
210- self .none_sources [name ] = 'out of datetime2 range'
210+ self .__none_sources [name ] = 'out of datetime2 range'
211211 return ret
212212 elif column .type == FIELD_TYPE .TIME2 :
213213 return self .__read_time2 (column )
@@ -232,14 +232,14 @@ def __read_values_name(self, column, null_bitmap, null_bitmap_index, cols_bitmap
232232 # We read set columns as a bitmap telling us which options
233233 # are enabled
234234 bit_mask = self .packet .read_uint_by_size (column .size )
235- set_value = set (
235+ ret = set (
236236 val for idx , val in enumerate (column .set_values )
237237 if bit_mask & 2 ** idx
238238 )
239- if not set_value :
240- self .none_sources [column .name ] = "empty set"
239+ if not ret :
240+ self .__none_sources [column .name ] = "empty set"
241241 return None
242- return set_value
242+ return ret
243243
244244 elif column .type == FIELD_TYPE .BIT :
245245 return self .__read_bit (column )
@@ -484,7 +484,7 @@ def _get_none_sources(self, column_data):
484484 if value is not None :
485485 continue
486486
487- source = self .none_sources .get (column_name , "null" )
487+ source = self .__none_sources .get (column_name , "null" )
488488 result [column_name ] = source
489489 return result
490490
@@ -537,8 +537,11 @@ def _dump(self):
537537 for row in self .rows :
538538 print ("--" )
539539 for key in row ["values" ]:
540- print ("*" , key , ":" , row ["values" ][key ],
541- "(%s)" % row ["none_sources" ][key ] if key in row ["none_sources" ] else "" )
540+ none_source = row ["none_sources" ][key ] if key in row ["none_sources" ] else ""
541+ if none_source :
542+ print ("*" , key , ":" , row ["values" ][key ], f"({ none_source } )" )
543+ else :
544+ print ("*" , key , ":" , row ["values" ][key ])
542545
543546class WriteRowsEvent (RowsEvent ):
544547 """This event is triggered when a row in database is added
@@ -567,8 +570,11 @@ def _dump(self):
567570 for row in self .rows :
568571 print ("--" )
569572 for key in row ["values" ]:
570- print ("*" , key , ":" , row ["values" ][key ],
571- "(%s)" % row ["none_sources" ][key ] if key in row ["none_sources" ] else "" )
573+ none_source = row ["none_sources" ][key ] if key in row ["none_sources" ] else ""
574+ if none_source :
575+ print ("*" , key , ":" , row ["values" ][key ], f"({ none_source } )" )
576+ else :
577+ print ("*" , key , ":" , row ["values" ][key ])
572578
573579
574580class UpdateRowsEvent (RowsEvent ):
@@ -620,9 +626,7 @@ def _dump(self):
620626 else :
621627 after_value_info = row ["after_values" ][key ]
622628
623- print ("*%s:%s=>%s" % (key ,
624- before_value_info ,
625- after_value_info ))
629+ print (f"*{ key } :{ before_value_info } =>{ after_value_info } " )
626630
627631class TableMapEvent (BinLogEvent ):
628632 """This event describes the structure of a table.
0 commit comments