flinkStreamSQL
flinkStreamSQL copied to clipboard
1.10版本Redis维表中RedisAllReqRow类存在数据越界异常
RedisAllReqRow的 flatMap(Tuple2<Boolean,Row> input, Collector<Tuple2<Boolean,Row>> out)方法124行存在数组越界异常。
代码如下,截图有问题: conValIndex 是一个连接字段在维表所有字段中的序号,我的例子中是9 for(Integer conValIndex : sideInfo.getEqualValIndex()){ Object equalObj = input.f1.getField(conValIndex); if(equalObj == null){ if (sideInfo.getJoinType() == JoinType.LEFT) { Row data = fillData(input.f1, null); out.collect(Tuple2.of(input.f0,data)); } return; } String columnName = sideInfo.getEqualFieldList().get(conValIndex); 而sideInfo.getEqualFieldList()是判断相等的字段列表,可能只有一个或两个,这样sideInfo.getEqualFieldList().get(conValIndex)就会抛出数据越界异常
@bcwoauthtest 我们近期优化一下