Skip to content

Commit e0510eb

Browse files
[FLINK-38211][table-planner] Small code improvements
1 parent 96de70f commit e0510eb

File tree

1 file changed

+12
-22
lines changed

1 file changed

+12
-22
lines changed

flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/nodes/physical/stream/StreamPhysicalMultiJoin.java

Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
import java.util.Collections;
5353
import java.util.List;
5454
import java.util.Map;
55+
import java.util.Objects;
5556
import java.util.Optional;
5657
import java.util.Set;
5758
import java.util.stream.Collectors;
@@ -229,7 +230,7 @@ private RexNode createMultiJoinCondition() {
229230

230231
public List<List<int[]>> getUniqueKeysForInputs() {
231232
if (inputUniqueKeys == null) {
232-
final List<List<int[]>> computed =
233+
inputUniqueKeys =
233234
inputs.stream()
234235
.map(
235236
input -> {
@@ -244,8 +245,7 @@ public List<List<int[]>> getUniqueKeysForInputs() {
244245
.map(ImmutableBitSet::toArray)
245246
.collect(Collectors.toList());
246247
})
247-
.collect(Collectors.toList());
248-
inputUniqueKeys = Collections.unmodifiableList(computed);
248+
.collect(Collectors.toUnmodifiableList());
249249
}
250250
return inputUniqueKeys;
251251
}
@@ -303,7 +303,7 @@ private String getCommonJoinKeyFieldNames() {
303303
}
304304

305305
if (commonJoinKey.isEmpty()) {
306-
commonJoinKey.add("noCommonJoinKey");
306+
return "noCommonJoinKey";
307307
}
308308

309309
return String.join(", ", commonJoinKey);
@@ -336,28 +336,19 @@ private String formatExpressionWithFieldNames(final RexNode expression, final Re
336336
* @return formatted join conditions string with field names
337337
*/
338338
private String formatJoinConditionsWithFieldNames(final RelWriter pw) {
339-
if (joinConditions.isEmpty()) {
340-
return "";
341-
}
342-
343-
final List<String> formattedConditions = new ArrayList<>();
344-
for (final RexNode condition : joinConditions) {
345-
if (condition != null) {
346-
formattedConditions.add(formatExpressionWithFieldNames(condition, pw));
347-
}
348-
}
349-
350-
return String.join(", ", formattedConditions);
339+
return joinConditions.stream()
340+
.filter(Objects::nonNull)
341+
.map(condition -> formatExpressionWithFieldNames(condition, pw))
342+
.collect(Collectors.joining(", "));
351343
}
352344

353345
private String formatInputUniqueKeysWithFieldNames() {
354346
final List<String> inputUniqueKeyStrings = new ArrayList<>();
355-
for (int i = 0; i < inputs.size(); i++) {
356-
final RelNode input = inputs.get(i);
357-
final List<String> fieldNames = input.getRowType().getFieldNames();
347+
for (final RelNode input : inputs) {
358348
final Set<ImmutableBitSet> uniqueKeys = getUniqueKeys(input);
359349

360350
if (uniqueKeys != null && !uniqueKeys.isEmpty()) {
351+
final List<String> fieldNames = input.getRowType().getFieldNames();
361352
final List<String> uniqueKeyStrings = new ArrayList<>();
362353
for (final ImmutableBitSet uniqueKey : uniqueKeys) {
363354
final List<String> keyFieldNames = new ArrayList<>();
@@ -370,9 +361,8 @@ private String formatInputUniqueKeysWithFieldNames() {
370361
uniqueKeyStrings.add("(" + String.join(", ", keyFieldNames) + ")");
371362
}
372363
}
373-
if (!uniqueKeyStrings.isEmpty()) {
374-
inputUniqueKeyStrings.add(String.join(", ", uniqueKeyStrings));
375-
}
364+
365+
inputUniqueKeyStrings.add(String.join(", ", uniqueKeyStrings));
376366
} else {
377367
inputUniqueKeyStrings.add("noUniqueKey");
378368
}

0 commit comments

Comments
 (0)