Browse Source

修复mysql datatime类型时区差

AE86 3 years ago
parent
commit
cfc3769757

+ 6 - 3
dbsyncer-listener/src/main/java/org/dbsyncer/listener/mysql/BinaryLogRemoteClient.java

@@ -7,6 +7,9 @@ import com.github.shyiko.mysql.binlog.io.ByteArrayInputStream;
 import com.github.shyiko.mysql.binlog.network.*;
 import com.github.shyiko.mysql.binlog.network.protocol.*;
 import com.github.shyiko.mysql.binlog.network.protocol.command.*;
+import org.dbsyncer.listener.mysql.deserializer.DeleteDeserializer;
+import org.dbsyncer.listener.mysql.deserializer.UpdateDeserializer;
+import org.dbsyncer.listener.mysql.deserializer.WriteDeserializer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -543,9 +546,9 @@ public class BinaryLogRemoteClient implements BinaryLogClient {
         eventDataDeserializers.put(EventType.UPDATE_ROWS, new UpdateRowsEventDataDeserializer(tableMapEventByTableId));
         eventDataDeserializers.put(EventType.WRITE_ROWS, new WriteRowsEventDataDeserializer(tableMapEventByTableId));
         eventDataDeserializers.put(EventType.DELETE_ROWS, new DeleteRowsEventDataDeserializer(tableMapEventByTableId));
-        eventDataDeserializers.put(EventType.EXT_WRITE_ROWS, (new WriteRowsEventDataDeserializer(tableMapEventByTableId)).setMayContainExtraInformation(true));
-        eventDataDeserializers.put(EventType.EXT_UPDATE_ROWS, (new UpdateRowsEventDataDeserializer(tableMapEventByTableId)).setMayContainExtraInformation(true));
-        eventDataDeserializers.put(EventType.EXT_DELETE_ROWS, (new DeleteRowsEventDataDeserializer(tableMapEventByTableId)).setMayContainExtraInformation(true));
+        eventDataDeserializers.put(EventType.EXT_WRITE_ROWS, (new WriteDeserializer(tableMapEventByTableId)).setMayContainExtraInformation(true));
+        eventDataDeserializers.put(EventType.EXT_UPDATE_ROWS, (new UpdateDeserializer(tableMapEventByTableId)).setMayContainExtraInformation(true));
+        eventDataDeserializers.put(EventType.EXT_DELETE_ROWS, (new DeleteDeserializer(tableMapEventByTableId)).setMayContainExtraInformation(true));
         eventDataDeserializers.put(EventType.XID, new XidEventDataDeserializer());
 
         if (simpleEventModel) {

+ 1 - 1
dbsyncer-listener/src/main/java/org/dbsyncer/listener/mysql/deserializer/DatetimeV2Deserialize.java

@@ -57,4 +57,4 @@ public class DatetimeV2Deserialize {
         return (int) (result & ((1 << numberOfBits) - 1));
     }
 
-}
+}

+ 3 - 3
dbsyncer-listener/src/main/java/org/dbsyncer/listener/mysql/deserializer/DeleteDeserializer.java

@@ -1,14 +1,14 @@
 package org.dbsyncer.listener.mysql.deserializer;
 
 import com.github.shyiko.mysql.binlog.event.TableMapEventData;
-import com.github.shyiko.mysql.binlog.event.deserialization.UpdateRowsEventDataDeserializer;
+import com.github.shyiko.mysql.binlog.event.deserialization.DeleteRowsEventDataDeserializer;
 import com.github.shyiko.mysql.binlog.io.ByteArrayInputStream;
 
 import java.io.IOException;
 import java.io.Serializable;
 import java.util.Map;
 
-public class DeleteDeserializer extends UpdateRowsEventDataDeserializer {
+public class DeleteDeserializer extends DeleteRowsEventDataDeserializer {
 
     private DatetimeV2Deserialize datetimeV2Deserialize;
 
@@ -21,4 +21,4 @@ public class DeleteDeserializer extends UpdateRowsEventDataDeserializer {
         return datetimeV2Deserialize.deserializeDatetimeV2(meta, inputStream);
     }
 
-}
+}

+ 1 - 1
dbsyncer-listener/src/main/java/org/dbsyncer/listener/mysql/deserializer/UpdateDeserializer.java

@@ -21,4 +21,4 @@ public class UpdateDeserializer extends UpdateRowsEventDataDeserializer {
         return datetimeV2Deserialize.deserializeDatetimeV2(meta, inputStream);
     }
 
-}
+}

+ 3 - 3
dbsyncer-listener/src/main/java/org/dbsyncer/listener/mysql/deserializer/WriteDeserializer.java

@@ -1,14 +1,14 @@
 package org.dbsyncer.listener.mysql.deserializer;
 
 import com.github.shyiko.mysql.binlog.event.TableMapEventData;
-import com.github.shyiko.mysql.binlog.event.deserialization.UpdateRowsEventDataDeserializer;
+import com.github.shyiko.mysql.binlog.event.deserialization.WriteRowsEventDataDeserializer;
 import com.github.shyiko.mysql.binlog.io.ByteArrayInputStream;
 
 import java.io.IOException;
 import java.io.Serializable;
 import java.util.Map;
 
-public class WriteDeserializer extends UpdateRowsEventDataDeserializer {
+public class WriteDeserializer extends WriteRowsEventDataDeserializer {
 
     private DatetimeV2Deserialize datetimeV2Deserialize;
 
@@ -21,4 +21,4 @@ public class WriteDeserializer extends UpdateRowsEventDataDeserializer {
         return datetimeV2Deserialize.deserializeDatetimeV2(meta, inputStream);
     }
 
-}
+}