diff --git a/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/support/ESSyncUtil.java b/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/support/ESSyncUtil.java index 36d0c672..ca10f6c9 100644 --- a/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/support/ESSyncUtil.java +++ b/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/support/ESSyncUtil.java @@ -44,7 +44,10 @@ public class ESSyncUtil { String[] values = val.toString().split(separator); return Arrays.asList(values); } else if (fieldInfo.startsWith("object")) { - return JSON.parse(val.toString()); + if (val instanceof String){ + return JSON.parse(val.toString()); + } + return JSON.parse(new String((byte[])val)); } return null; }