Skip to content

Commit e48bc35

Browse files
authored
通过索引别名获取mapping,返回数据为真实索引,而不是别名,导致mappings.get(index).get(type)报空指针异常 (#4122)
1 parent 11a5f2a commit e48bc35

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

  • client-adapter/es6x/src/main/java/com/alibaba/otter/canal/client/adapter/es6x/support

client-adapter/es6x/src/main/java/com/alibaba/otter/canal/client/adapter/es6x/support/ESConnection.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,13 @@ public MappingMetaData getMapping(String index, String type) {
150150
logger.error(e.getMessage(), e);
151151
return null;
152152
}
153-
mappingMetaData = mappings.get(index).get(type);
153+
154+
//通过别名查询mapping返回的是真实索引名称,mappings.get(index)返回null,为兼容别名情况修改如下:
155+
ImmutableOpenMap<String, MappingMetaData> esIndex = mappings.get(index);
156+
if(esIndex == null){
157+
esIndex = mappings.valuesIt().next();
158+
}
159+
mappingMetaData = esIndex.get(type);
154160
}
155161
return mappingMetaData;
156162
}

0 commit comments

Comments
 (0)