Skip to content

Commit f81bc05

Browse files
committed
added dbms property in BinLogEvent
1 parent 03f1ab1 commit f81bc05

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

pymysqlreplication/event.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ def __init__(
2727
ignore_decode_errors=False,
2828
verify_checksum=False,
2929
optional_meta_data=False,
30+
dbms=None,
3031
):
3132
self.packet = from_packet
3233
self.table_map = table_map
@@ -43,6 +44,7 @@ def __init__(
4344
self._processed = True
4445
self.complete = True
4546
self._verify_event()
47+
self.dbms = dbms
4648

4749
def _read_table_id(self):
4850
# Table ID is 6 byte
@@ -104,7 +106,7 @@ def __init__(self, from_packet, event_size, table_map, ctl_connection, **kwargs)
104106
self.gno = struct.unpack("<Q", self.packet.read(8))[0]
105107
self.lt_type = self.packet.read(1)[0]
106108

107-
if self.mysql_version >= (5, 7):
109+
if not self.is_mariadb and self.mysql_version >= (5, 7):
108110
self.last_committed = struct.unpack("<Q", self.packet.read(8))[0]
109111
self.sequence_number = struct.unpack("<Q", self.packet.read(8))[0]
110112

@@ -367,6 +369,10 @@ def __init__(self, from_packet, event_size, table_map, ctl_connection, **kwargs)
367369
self.binlog_version = struct.unpack("<H", self.packet.read(2))
368370
self.mysql_version_str = self.packet.read(50).rstrip(b"\0").decode()
369371
numbers = self.mysql_version_str.split("-")[0]
372+
if "MariaDB" in self.mysql_version_str:
373+
self.dbms = "mariadb"
374+
else:
375+
self.dbms = "mysql"
370376
self.mysql_version = tuple(map(int, numbers.split(".")))
371377
self.created = struct.unpack("<I", self.packet.read(4))[0]
372378
self.common_header_len = struct.unpack("<B", self.packet.read(1))[0]

0 commit comments

Comments
 (0)