This is an automated email from the ASF dual-hosted git repository.

jhyde pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit ce88348960e95e1c13da850b4422b2f49f022d93
Author: Julian Hyde <[email protected]>
AuthorDate: Thu Jul 6 11:56:05 2023 -0700

    Code style: lint
    
    The next commit adds various lint rules. This commit fixes
    the errors detected by those rules in existing code.
---
 babel/src/test/resources/sql/big-query.iq          | 12 +++++++-----
 .../calcite/adapter/enumerable/EnumUtils.java      |  2 +-
 .../adapter/enumerable/EnumerableLimitSort.java    | 22 +++++++++++++---------
 .../calcite/adapter/enumerable/RexImpTable.java    |  6 +++---
 .../org/apache/calcite/interpreter/JoinNode.java   |  6 +++---
 .../apache/calcite/interpreter/UncollectNode.java  |  2 +-
 .../apache/calcite/jdbc/SimpleCalciteSchema.java   |  2 +-
 .../apache/calcite/plan/SubstitutionVisitor.java   |  6 +++---
 .../calcite/plan/volcano/VolcanoPlanner.java       |  5 +++--
 .../apache/calcite/rel/convert/ConverterRule.java  |  5 +++--
 .../calcite/rel/externalize/RelDotWriter.java      |  7 +++----
 .../calcite/rel/hint/CompositeHintPredicate.java   |  4 ++--
 .../calcite/rel/metadata/RelMdColumnOrigins.java   |  2 +-
 .../rel/metadata/RelMdColumnUniqueness.java        |  2 +-
 .../calcite/rel/metadata/RelMdPredicates.java      |  2 +-
 .../calcite/rel/rel2sql/RelToSqlConverter.java     |  6 +++---
 .../apache/calcite/rel/rel2sql/SqlImplementor.java |  6 +++---
 .../AggregateExpandDistinctAggregatesRule.java     |  4 ++--
 .../calcite/rel/rules/AggregateJoinRemoveRule.java |  5 +++--
 .../AggregateProjectConstantToDummyJoinRule.java   |  2 +-
 .../calcite/rel/rules/MinusToDistinctRule.java     |  5 +++--
 .../rel/rules/ProjectJoinJoinRemoveRule.java       |  2 +-
 .../calcite/rel/rules/ProjectJoinRemoveRule.java   |  2 +-
 .../calcite/rel/type/RelDataTypeFactoryImpl.java   |  4 ++--
 .../java/org/apache/calcite/rex/RexProgram.java    |  2 +-
 .../org/apache/calcite/runtime/SqlFunctions.java   |  4 ++--
 .../org/apache/calcite/sql/SqlDataTypeSpec.java    |  5 +++--
 .../java/org/apache/calcite/sql/SqlIdentifier.java | 10 ++++++----
 .../calcite/sql/fun/SqlLibraryOperators.java       |  2 +-
 .../org/apache/calcite/sql/type/ReturnTypes.java   |  2 +-
 .../calcite/sql/validate/IdentifierNamespace.java  |  5 +++--
 .../calcite/sql/validate/SqlValidatorImpl.java     |  2 +-
 .../apache/calcite/sql2rel/RelDecorrelator.java    | 12 +++++++-----
 .../apache/calcite/sql2rel/SqlToRelConverter.java  |  2 +-
 .../java/org/apache/calcite/tools/RelBuilder.java  | 12 +++++++-----
 .../calcite/util/graph/DefaultDirectedGraph.java   |  2 +-
 .../org/apache/calcite/plan/RelWriterTest.java     |  4 ++--
 .../java/org/apache/calcite/sql/SqlNodeTest.java   |  2 +-
 .../calcite/test/MaterializedViewTester.java       |  6 +++---
 .../org/apache/calcite/test/MutableRelTest.java    |  2 +-
 .../java/org/apache/calcite/util/SourceTest.java   |  2 +-
 core/src/test/resources/sql/cast-with-format.iq    |  1 +
 .../apache/calcite/adapter/druid/DruidTable.java   | 11 +++++++----
 .../adapter/elasticsearch/ElasticsearchJson.java   |  2 +-
 .../adapter/elasticsearch/ElasticsearchMethod.java |  2 +-
 .../elasticsearch/ElasticsearchProject.java        |  4 ++--
 .../adapter/elasticsearch/ElasticsearchTable.java  |  8 ++++----
 .../elasticsearch/ElasticsearchTableScan.java      |  2 +-
 .../adapter/elasticsearch/QueryBuilders.java       |  6 +++---
 .../adapter/elasticsearch/AggregationTest.java     |  2 +-
 .../elasticsearch/EmbeddedElasticsearchNode.java   |  2 +-
 .../elasticsearch/EmbeddedElasticsearchPolicy.java |  4 ++--
 .../adapter/elasticsearch/ScrollingTest.java       |  2 +-
 .../apache/calcite/test/ElasticsearchChecker.java  |  4 ++--
 .../apache/calcite/adapter/file/CsvEnumerator.java |  5 +++--
 .../apache/calcite/adapter/file/FileSchema.java    |  5 +++--
 .../calcite/adapter/innodb/IndexCondition.java     |  9 ++++++---
 innodb/src/test/resources/README.md                | 12 ++++++------
 .../apache/calcite/linq4j/tree/TryStatement.java   |  2 +-
 .../calcite/adapter/mongodb/MongoTableScan.java    |  5 +++--
 .../java/org/apache/calcite/slt/SqlLogicTests.java |  4 ++--
 .../apache/calcite/adapter/redis/RedisTable.java   |  5 +++--
 .../apache/calcite/server/ServerDdlExecutor.java   |  5 +++--
 site/_docs/innodb_adapter.md                       |  6 +++---
 .../org/apache/calcite/test/MockDdlExecutor.java   |  5 +++--
 65 files changed, 170 insertions(+), 140 deletions(-)

diff --git a/babel/src/test/resources/sql/big-query.iq 
b/babel/src/test/resources/sql/big-query.iq
index 10c8ed6b67..ba9d034515 100755
--- a/babel/src/test/resources/sql/big-query.iq
+++ b/babel/src/test/resources/sql/big-query.iq
@@ -686,8 +686,8 @@ SELECT SAFE_ADD(CAST('NaN' AS DOUBLE), CAST(3 as BIGINT)) 
as NaN_result;
 #
 # SAFE_DIVIDE(value1, value2)
 #
-# Equivalent to the divide operator (/), but returns NULL if 
overflow/underflow occurs 
-# or if value2 is zero.
+# Equivalent to the divide operator (/), but returns NULL if
+# overflow/underflow occurs or if value2 is zero.
 SELECT SAFE_DIVIDE(20, 4) as result;
 +--------+
 | result |
@@ -709,7 +709,8 @@ SELECT SAFE_DIVIDE(-9223372036854775806, 0) as zero_result;
 
 !ok
 
-SELECT SAFE_DIVIDE(CAST(1.7e308 as DOUBLE), CAST(1.7e-308 as DOUBLE)) as 
double_overflow;
+SELECT SAFE_DIVIDE(CAST(1.7e308 as DOUBLE),
+        CAST(1.7e-308 as DOUBLE)) as double_overflow;
 +-----------------+
 | double_overflow |
 +-----------------+
@@ -719,8 +720,8 @@ SELECT SAFE_DIVIDE(CAST(1.7e308 as DOUBLE), CAST(1.7e-308 
as DOUBLE)) as double_
 
 !ok
 
-SELECT SAFE_DIVIDE(CAST(-3.5e75 AS DECIMAL(76, 0)), CAST(3.5e-75 AS 
DECIMAL(76, 0))) 
-    as decimal_overflow;
+SELECT SAFE_DIVIDE(CAST(-3.5e75 AS DECIMAL(76, 0)),
+        CAST(3.5e-75 AS DECIMAL(76, 0))) as decimal_overflow;
 +------------------+
 | decimal_overflow |
 +------------------+
@@ -751,6 +752,7 @@ SELECT SAFE_DIVIDE(1, CAST(1 AS DOUBLE) / 
CAST(9223372036854775807 AS DOUBLE)) a
 (1 row)
 
 !ok
+
 #####################################################################
 # SAFE_MULTIPLY
 #
diff --git 
a/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumUtils.java 
b/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumUtils.java
index 841dece6ef..d4cfb7d349 100644
--- a/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumUtils.java
+++ b/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumUtils.java
@@ -614,7 +614,7 @@ public class EnumUtils {
       }
     } else {
       int j = 0;
-      for (Expression argument: arguments) {
+      for (Expression argument : arguments) {
         Class<?> type;
         if (!targetTypes[j].isArray()) {
           type = targetTypes[j];
diff --git 
a/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumerableLimitSort.java
 
b/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumerableLimitSort.java
index 8b7a2706fb..defc28f69a 100644
--- 
a/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumerableLimitSort.java
+++ 
b/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumerableLimitSort.java
@@ -98,21 +98,25 @@ public class EnumerableLimitSort extends Sort implements 
EnumerableRel {
 
     final Expression fetchVal;
     if (this.fetch == null) {
-      fetchVal = Expressions.constant(Integer.valueOf(Integer.MAX_VALUE));
+      fetchVal = Expressions.constant(Integer.MAX_VALUE);
     } else {
       fetchVal = getExpression(this.fetch);
     }
 
-    final Expression offsetVal = this.offset == null ? 
Expressions.constant(Integer.valueOf(0))
-        : getExpression(this.offset);
+    final Expression offsetVal;
+    if (this.offset == null) {
+      offsetVal = Expressions.constant(0);
+    } else {
+      offsetVal = getExpression(this.offset);
+    }
 
     builder.add(
-        Expressions.return_(
-            null, Expressions.call(
-                BuiltInMethod.ORDER_BY_WITH_FETCH_AND_OFFSET.method, 
Expressions.list(
-                    childExp,
-                    builder.append("keySelector", pair.left))
-                    .appendIfNotNull(builder.appendIfNotNull("comparator", 
pair.right))
+        Expressions.return_(null,
+            
Expressions.call(BuiltInMethod.ORDER_BY_WITH_FETCH_AND_OFFSET.method,
+                Expressions.list(childExp,
+                        builder.append("keySelector", pair.left))
+                    .appendIfNotNull(
+                        builder.appendIfNotNull("comparator", pair.right))
                     .appendIfNotNull(
                         builder.appendIfNotNull("offset",
                             Expressions.constant(offsetVal)))
diff --git 
a/core/src/main/java/org/apache/calcite/adapter/enumerable/RexImpTable.java 
b/core/src/main/java/org/apache/calcite/adapter/enumerable/RexImpTable.java
index f061950a23..9d563077c8 100644
--- a/core/src/main/java/org/apache/calcite/adapter/enumerable/RexImpTable.java
+++ b/core/src/main/java/org/apache/calcite/adapter/enumerable/RexImpTable.java
@@ -3762,7 +3762,7 @@ public class RexImpTable {
         final List<RexToLixTranslator.Result> arguments) {
       final List<Expression> argIsNullList = new ArrayList<>();
       final List<Expression> argValueList = new ArrayList<>();
-      for (RexToLixTranslator.Result result: arguments) {
+      for (RexToLixTranslator.Result result : arguments) {
         argIsNullList.add(result.isNullVariable);
         argValueList.add(result.valueVariable);
       }
@@ -3950,7 +3950,7 @@ public class RexImpTable {
     @Override public RexToLixTranslator.Result implement(final 
RexToLixTranslator translator,
         final RexCall call, final List<RexToLixTranslator.Result> arguments) {
       final List<Expression> argIsNullList = new ArrayList<>();
-      for (RexToLixTranslator.Result result: arguments) {
+      for (RexToLixTranslator.Result result : arguments) {
         argIsNullList.add(result.isNullVariable);
       }
       final List<Expression> nullAsTrue =
@@ -4004,7 +4004,7 @@ public class RexImpTable {
     @Override public RexToLixTranslator.Result implement(final 
RexToLixTranslator translator,
         final RexCall call, final List<RexToLixTranslator.Result> arguments) {
       final List<Expression> argIsNullList = new ArrayList<>();
-      for (RexToLixTranslator.Result result: arguments) {
+      for (RexToLixTranslator.Result result : arguments) {
         argIsNullList.add(result.isNullVariable);
       }
       final List<Expression> nullAsFalse =
diff --git a/core/src/main/java/org/apache/calcite/interpreter/JoinNode.java 
b/core/src/main/java/org/apache/calcite/interpreter/JoinNode.java
index d7057c7db0..f3c5e48334 100644
--- a/core/src/main/java/org/apache/calcite/interpreter/JoinNode.java
+++ b/core/src/main/java/org/apache/calcite/interpreter/JoinNode.java
@@ -92,7 +92,7 @@ public class JoinNode implements Node {
       // send un-match rows for full join on right source
       List<Row> empty = new ArrayList<>();
       // TODO: CALCITE-4308, JointNode in Interpreter might fail with NPE for 
FULL join
-      for (Row row: requireNonNull(innerRows, "innerRows")) {
+      for (Row row : requireNonNull(innerRows, "innerRows")) {
         if (matchRowSet.contains(row)) {
           continue;
         }
@@ -109,7 +109,7 @@ public class JoinNode implements Node {
     boolean outerRowOnLeft = joinRelType != JoinRelType.RIGHT;
     copyToContext(outerRow, outerRowOnLeft);
     List<Row> matchInnerRows = new ArrayList<>();
-    for (Row innerRow: innerRows) {
+    for (Row innerRow : innerRows) {
       copyToContext(innerRow, !outerRowOnLeft);
       final Boolean execute = (Boolean) condition.execute(context);
       if (execute != null && execute) {
@@ -135,7 +135,7 @@ public class JoinNode implements Node {
         boolean outerRowOnLeft = joinRelType != JoinRelType.RIGHT;
         copyToContext(outerRow, outerRowOnLeft);
         requireNonNull(context.values, "context.values");
-        for (Row row: matchInnerRows) {
+        for (Row row : matchInnerRows) {
           copyToContext(row, !outerRowOnLeft);
           sink.send(Row.asCopy(context.values));
         }
diff --git 
a/core/src/main/java/org/apache/calcite/interpreter/UncollectNode.java 
b/core/src/main/java/org/apache/calcite/interpreter/UncollectNode.java
index d5688041da..01f4d578f4 100644
--- a/core/src/main/java/org/apache/calcite/interpreter/UncollectNode.java
+++ b/core/src/main/java/org/apache/calcite/interpreter/UncollectNode.java
@@ -35,7 +35,7 @@ public class UncollectNode extends 
AbstractSingleNode<Uncollect> {
   @Override public void run() throws InterruptedException {
     Row row = null;
     while ((row = source.receive()) != null) {
-      for (Object value: row.getValues()) {
+      for (Object value : row.getValues()) {
         if (value == null) {
           throw new NullPointerException("NULL value for unnest.");
         }
diff --git 
a/core/src/main/java/org/apache/calcite/jdbc/SimpleCalciteSchema.java 
b/core/src/main/java/org/apache/calcite/jdbc/SimpleCalciteSchema.java
index 032b6d88ea..edb1d2afde 100644
--- a/core/src/main/java/org/apache/calcite/jdbc/SimpleCalciteSchema.java
+++ b/core/src/main/java/org/apache/calcite/jdbc/SimpleCalciteSchema.java
@@ -92,7 +92,7 @@ class SimpleCalciteSchema extends CalciteSchema {
       return lowerCaseName;
     }
     // Fall through: Set iteration
-    for (String candidate: candidates) {
+    for (String candidate : candidates) {
       if (candidate.equalsIgnoreCase(name)) {
         return candidate;
       }
diff --git 
a/core/src/main/java/org/apache/calcite/plan/SubstitutionVisitor.java 
b/core/src/main/java/org/apache/calcite/plan/SubstitutionVisitor.java
index 3cd45f4556..2068305321 100644
--- a/core/src/main/java/org/apache/calcite/plan/SubstitutionVisitor.java
+++ b/core/src/main/java/org/apache/calcite/plan/SubstitutionVisitor.java
@@ -1746,7 +1746,7 @@ public class SubstitutionVisitor {
     if (list0.size() != list1.size()) {
       return false;
     }
-    for (MutableRel rel: list0) {
+    for (MutableRel rel : list0) {
       int index = list1.indexOf(rel);
       if (index == -1) {
         return false;
@@ -1766,7 +1766,7 @@ public class SubstitutionVisitor {
     final RexShuttle shuttle = getExpandShuttle(calc.program);
     final RexNode condition = shuttle.apply(calc.program.getCondition());
     final List<RexNode> projects = new ArrayList<>();
-    for (RexNode rex: shuttle.apply(calc.program.getProjectList())) {
+    for (RexNode rex : shuttle.apply(calc.program.getProjectList())) {
       projects.add(rex);
     }
     if (condition == null) {
@@ -1836,7 +1836,7 @@ public class SubstitutionVisitor {
   private static boolean referenceByMapping(
       RexNode joinCondition, List<RexNode>... projectsOfInputs) {
     List<RexNode> projects = new ArrayList<>();
-    for (List<RexNode> projectsOfInput: projectsOfInputs) {
+    for (List<RexNode> projectsOfInput : projectsOfInputs) {
       projects.addAll(projectsOfInput);
     }
 
diff --git 
a/core/src/main/java/org/apache/calcite/plan/volcano/VolcanoPlanner.java 
b/core/src/main/java/org/apache/calcite/plan/volcano/VolcanoPlanner.java
index 4e43d13fa0..9d4f9fcc60 100644
--- a/core/src/main/java/org/apache/calcite/plan/volcano/VolcanoPlanner.java
+++ b/core/src/main/java/org/apache/calcite/plan/volcano/VolcanoPlanner.java
@@ -234,8 +234,9 @@ public class VolcanoPlanner extends AbstractRelOptPlanner {
     this.zeroCost = this.costFactory.makeZeroCost();
     this.infCost = this.costFactory.makeInfiniteCost();
     // If LOGGER is debug enabled, enable provenance information to be captured
-    this.provenanceMap = LOGGER.isDebugEnabled() ? new HashMap<>()
-        : Util.blackholeMap();
+    this.provenanceMap =
+        LOGGER.isDebugEnabled() ? new HashMap<>()
+            : Util.blackholeMap();
     initRuleQueue();
   }
 
diff --git 
a/core/src/main/java/org/apache/calcite/rel/convert/ConverterRule.java 
b/core/src/main/java/org/apache/calcite/rel/convert/ConverterRule.java
index 240d143d99..beb7e1b810 100644
--- a/core/src/main/java/org/apache/calcite/rel/convert/ConverterRule.java
+++ b/core/src/main/java/org/apache/calcite/rel/convert/ConverterRule.java
@@ -61,8 +61,9 @@ public abstract class ConverterRule
 
     // Most sub-classes are concerned with converting one convention to
     // another, and for them, the "out" field is a convenient short-cut.
-    this.out = outTrait instanceof Convention ? (Convention) outTrait
-        : castNonNull(null);
+    this.out =
+        outTrait instanceof Convention ? (Convention) outTrait
+            : castNonNull(null);
   }
 
   /**
diff --git 
a/core/src/main/java/org/apache/calcite/rel/externalize/RelDotWriter.java 
b/core/src/main/java/org/apache/calcite/rel/externalize/RelDotWriter.java
index 07bd57b796..f5490c0333 100644
--- a/core/src/main/java/org/apache/calcite/rel/externalize/RelDotWriter.java
+++ b/core/src/main/java/org/apache/calcite/rel/externalize/RelDotWriter.java
@@ -236,10 +236,9 @@ public class RelDotWriter extends RelWriterImpl {
     }
 
     List<String> descParts = new ArrayList<>();
-    for (int idx = 0; idx < label.length(); idx += 
option.maxNodeLabelPerLine()) {
-      int endIdx = idx + option.maxNodeLabelPerLine() > label.length() ? 
label.length()
-          : idx + option.maxNodeLabelPerLine();
-      descParts.add(label.substring(idx, endIdx));
+    for (int i = 0; i < label.length(); i += option.maxNodeLabelPerLine()) {
+      int endIdx = Math.min(i + option.maxNodeLabelPerLine(), label.length());
+      descParts.add(label.substring(i, endIdx));
     }
 
     return String.join("\\n", descParts) + (trimmed ? "..." : "");
diff --git 
a/core/src/main/java/org/apache/calcite/rel/hint/CompositeHintPredicate.java 
b/core/src/main/java/org/apache/calcite/rel/hint/CompositeHintPredicate.java
index 143e4a7fd1..da9dba1085 100644
--- a/core/src/main/java/org/apache/calcite/rel/hint/CompositeHintPredicate.java
+++ b/core/src/main/java/org/apache/calcite/rel/hint/CompositeHintPredicate.java
@@ -65,7 +65,7 @@ public class CompositeHintPredicate implements HintPredicate {
   private boolean apply(Composition composition, RelHint hint, RelNode rel) {
     switch (composition) {
     case AND:
-      for (HintPredicate predicate: predicates) {
+      for (HintPredicate predicate : predicates) {
         if (!predicate.apply(hint, rel)) {
           return false;
         }
@@ -73,7 +73,7 @@ public class CompositeHintPredicate implements HintPredicate {
       return true;
     case OR:
     default:
-      for (HintPredicate predicate: predicates) {
+      for (HintPredicate predicate : predicates) {
         if (predicate.apply(hint, rel)) {
           return true;
         }
diff --git 
a/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnOrigins.java 
b/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnOrigins.java
index a6ed11c104..0feeb8f7ae 100644
--- a/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnOrigins.java
+++ b/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnOrigins.java
@@ -152,7 +152,7 @@ public class RelMdColumnOrigins
       }
     };
     final List<RexNode> projects = new ArrayList<>();
-    for (RexNode rex: rexShuttle.apply(rel.getProgram().getProjectList())) {
+    for (RexNode rex : rexShuttle.apply(rel.getProgram().getProjectList())) {
       projects.add(rex);
     }
     final RexNode rexNode = projects.get(iOutputColumn);
diff --git 
a/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnUniqueness.java 
b/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnUniqueness.java
index 91be369434..bb38c3dbe7 100644
--- 
a/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnUniqueness.java
+++ 
b/core/src/main/java/org/apache/calcite/rel/metadata/RelMdColumnUniqueness.java
@@ -369,7 +369,7 @@ public class RelMdColumnUniqueness
         return false;
       }
       final ImmutableBitSet.Builder targetColumns = ImmutableBitSet.builder();
-      for (int key: commonKeys) {
+      for (int key : commonKeys) {
         targetColumns.set(rel.getGroupSet().nth(key));
       }
 
diff --git 
a/core/src/main/java/org/apache/calcite/rel/metadata/RelMdPredicates.java 
b/core/src/main/java/org/apache/calcite/rel/metadata/RelMdPredicates.java
index 287933312c..e25d30686f 100644
--- a/core/src/main/java/org/apache/calcite/rel/metadata/RelMdPredicates.java
+++ b/core/src/main/java/org/apache/calcite/rel/metadata/RelMdPredicates.java
@@ -476,7 +476,7 @@ public class RelMdPredicates
         continue;
       }
 
-      for (RexNode pred: info.pulledUpPredicates) {
+      for (RexNode pred : info.pulledUpPredicates) {
         if (finalPredicates.stream().anyMatch(
             finalPred -> rexImplicationChecker.implies(finalPred, pred))) {
           // There's already a stricter predicate in finalPredicates,
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rel2sql/RelToSqlConverter.java 
b/core/src/main/java/org/apache/calcite/rel/rel2sql/RelToSqlConverter.java
index 5b59d2b9ee..21be392f8f 100644
--- a/core/src/main/java/org/apache/calcite/rel/rel2sql/RelToSqlConverter.java
+++ b/core/src/main/java/org/apache/calcite/rel/rel2sql/RelToSqlConverter.java
@@ -501,16 +501,16 @@ public class RelToSqlConverter extends SqlImplementor
     final RelNode input = e.getInput();
     final int inputFieldCount = input.getRowType().getFieldCount();
     final List<SqlNode> rexOvers = new ArrayList<>();
-    for (Window.Group group: e.groups) {
+    for (Window.Group group : e.groups) {
       rexOvers.addAll(builder.context.toSql(group, e.constants, 
inputFieldCount));
     }
     final List<SqlNode> selectList = new ArrayList<>();
 
-    for (RelDataTypeField field: input.getRowType().getFieldList()) {
+    for (RelDataTypeField field : input.getRowType().getFieldList()) {
       addSelect(selectList, builder.context.field(field.getIndex()), 
e.getRowType());
     }
 
-    for (SqlNode rexOver: rexOvers) {
+    for (SqlNode rexOver : rexOvers) {
       addSelect(selectList, rexOver, e.getRowType());
     }
 
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java 
b/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
index 573c497885..8ef8c85b23 100644
--- a/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
+++ b/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
@@ -943,10 +943,10 @@ public abstract class SqlImplementor {
       final List<SqlNode> rexOvers = new ArrayList<>();
       final List<SqlNode> partitionKeys = new ArrayList<>();
       final List<SqlNode> orderByKeys = new ArrayList<>();
-      for (int partition: group.keys) {
+      for (int partition : group.keys) {
         partitionKeys.add(this.field(partition));
       }
-      for (RelFieldCollation collation: group.orderKeys.getFieldCollations()) {
+      for (RelFieldCollation collation : group.orderKeys.getFieldCollations()) 
{
         this.addOrderItem(orderByKeys, collation);
       }
       SqlLiteral isRows = SqlLiteral.createBoolean(group.isRows, POS);
@@ -955,7 +955,7 @@ public abstract class SqlImplementor {
 
       final SqlLiteral allowPartial = null;
 
-      for (Window.RexWinAggCall winAggCall: group.aggCalls) {
+      for (Window.RexWinAggCall winAggCall : group.aggCalls) {
         SqlAggFunction aggFunction = (SqlAggFunction) winAggCall.getOperator();
         final SqlWindow sqlWindow =
                 SqlWindow.create(null, null,
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rules/AggregateExpandDistinctAggregatesRule.java
 
b/core/src/main/java/org/apache/calcite/rel/rules/AggregateExpandDistinctAggregatesRule.java
index 10d42318a8..41e979c239 100644
--- 
a/core/src/main/java/org/apache/calcite/rel/rules/AggregateExpandDistinctAggregatesRule.java
+++ 
b/core/src/main/java/org/apache/calcite/rel/rules/AggregateExpandDistinctAggregatesRule.java
@@ -463,9 +463,9 @@ public final class AggregateExpandDistinctAggregatesRule
     // Get the base ordinal of filter args for different groupSets.
     final Map<Pair<ImmutableBitSet, Integer>, Integer> filters = new 
LinkedHashMap<>();
     int z = groupCount + distinctAggCalls.size();
-    for (ImmutableBitSet groupSet: groupSets) {
+    for (ImmutableBitSet groupSet : groupSets) {
       Set<Integer> filterArgList = distinctFilterArgMap.get(groupSet);
-      for (Integer filterArg: requireNonNull(filterArgList, "filterArgList")) {
+      for (Integer filterArg : requireNonNull(filterArgList, "filterArgList")) 
{
         filters.put(Pair.of(groupSet, filterArg), z);
         z += 1;
       }
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rules/AggregateJoinRemoveRule.java 
b/core/src/main/java/org/apache/calcite/rel/rules/AggregateJoinRemoveRule.java
index f4c6c4b97c..3ca0a19967 100644
--- 
a/core/src/main/java/org/apache/calcite/rel/rules/AggregateJoinRemoveRule.java
+++ 
b/core/src/main/java/org/apache/calcite/rel/rules/AggregateJoinRemoveRule.java
@@ -86,8 +86,9 @@ public class AggregateJoinRemoveRule
     boolean isLeftJoin = join.getJoinType() == JoinRelType.LEFT;
     int lower = isLeftJoin
         ? join.getLeft().getRowType().getFieldCount() : 0;
-    int upper = isLeftJoin ? join.getRowType().getFieldCount()
-        : join.getLeft().getRowType().getFieldCount();
+    int upper =
+        isLeftJoin ? join.getRowType().getFieldCount()
+            : join.getLeft().getRowType().getFieldCount();
 
     // Check whether the aggregate uses columns whose index is between
     // lower(included) and upper(excluded).
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rules/AggregateProjectConstantToDummyJoinRule.java
 
b/core/src/main/java/org/apache/calcite/rel/rules/AggregateProjectConstantToDummyJoinRule.java
index 7261851332..d38de30ec9 100644
--- 
a/core/src/main/java/org/apache/calcite/rel/rules/AggregateProjectConstantToDummyJoinRule.java
+++ 
b/core/src/main/java/org/apache/calcite/rel/rules/AggregateProjectConstantToDummyJoinRule.java
@@ -65,7 +65,7 @@ public final class AggregateProjectConstantToDummyJoinRule
     final Aggregate aggregate = call.rel(0);
     final Project project = call.rel(1);
 
-    for (int groupKey: aggregate.getGroupSet().asList()) {
+    for (int groupKey : aggregate.getGroupSet().asList()) {
       if (groupKey >= aggregate.getRowType().getFieldCount()) {
         continue;
       }
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rules/MinusToDistinctRule.java 
b/core/src/main/java/org/apache/calcite/rel/rules/MinusToDistinctRule.java
index e76896d086..7b14f2e946 100644
--- a/core/src/main/java/org/apache/calcite/rel/rules/MinusToDistinctRule.java
+++ b/core/src/main/java/org/apache/calcite/rel/rules/MinusToDistinctRule.java
@@ -149,8 +149,9 @@ public class MinusToDistinctRule
 
     ImmutableList.Builder<RexNode> filters = ImmutableList.builder();
     for (int i = 0; i < branchCount; i++) {
-      SqlOperator operator = i == 0 ? SqlStdOperatorTable.GREATER_THAN
-          : SqlStdOperatorTable.EQUALS;
+      SqlOperator operator =
+          i == 0 ? SqlStdOperatorTable.GREATER_THAN
+              : SqlStdOperatorTable.EQUALS;
       filters.add(
           rexBuilder.makeCall(operator, relBuilder.field(originalFieldCnt + i),
           relBuilder.literal(new BigDecimal(0))));
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinJoinRemoveRule.java
 
b/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinJoinRemoveRule.java
index f88f54a17b..a704587dc6 100644
--- 
a/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinJoinRemoveRule.java
+++ 
b/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinJoinRemoveRule.java
@@ -89,7 +89,7 @@ public class ProjectJoinJoinRemoveRule
     int leftBottomChildSize = 
bottomJoin.getLeft().getRowType().getFieldCount();
 
     // Check whether the project uses columns in the right input of bottom 
join.
-    for (RexNode expr: project.getProjects()) {
+    for (RexNode expr : project.getProjects()) {
       if (RelOptUtil.InputFinder.bits(expr).asList().stream().anyMatch(
           i -> i >= leftBottomChildSize
               && i < bottomJoin.getRowType().getFieldCount())) {
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinRemoveRule.java 
b/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinRemoveRule.java
index 33b4a92e4c..8e2339d6ea 100644
--- a/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinRemoveRule.java
+++ b/core/src/main/java/org/apache/calcite/rel/rules/ProjectJoinRemoveRule.java
@@ -86,7 +86,7 @@ public class ProjectJoinRemoveRule
 
     // Check whether the project uses columns whose index is between
     // lower(included) and upper(excluded).
-    for (RexNode expr: project.getProjects()) {
+    for (RexNode expr : project.getProjects()) {
       if (RelOptUtil.InputFinder.bits(expr).asList().stream().anyMatch(
           i -> i >= lower && i < upper)) {
         return;
diff --git 
a/core/src/main/java/org/apache/calcite/rel/type/RelDataTypeFactoryImpl.java 
b/core/src/main/java/org/apache/calcite/rel/type/RelDataTypeFactoryImpl.java
index 94ec7e0609..7beb8b9f9d 100644
--- a/core/src/main/java/org/apache/calcite/rel/type/RelDataTypeFactoryImpl.java
+++ b/core/src/main/java/org/apache/calcite/rel/type/RelDataTypeFactoryImpl.java
@@ -262,7 +262,7 @@ public abstract class RelDataTypeFactoryImpl implements 
RelDataTypeFactory {
       final List<RelDataType> types, SqlTypeName sqlTypeName) {
     assert sqlTypeName == SqlTypeName.ARRAY || sqlTypeName == 
SqlTypeName.MULTISET;
     boolean isNullable = false;
-    for (RelDataType type: types) {
+    for (RelDataType type : types) {
       if (type.getComponentType() == null) {
         return null;
       }
@@ -286,7 +286,7 @@ public abstract class RelDataTypeFactoryImpl implements 
RelDataTypeFactory {
       final List<RelDataType> types, SqlTypeName sqlTypeName) {
     assert sqlTypeName == SqlTypeName.MAP;
     boolean isNullable = false;
-    for (RelDataType type: types) {
+    for (RelDataType type : types) {
       if (!(type instanceof MapSqlType)) {
         return null;
       }
diff --git a/core/src/main/java/org/apache/calcite/rex/RexProgram.java 
b/core/src/main/java/org/apache/calcite/rex/RexProgram.java
index 623475c1a1..09858e4d26 100644
--- a/core/src/main/java/org/apache/calcite/rex/RexProgram.java
+++ b/core/src/main/java/org/apache/calcite/rex/RexProgram.java
@@ -250,7 +250,7 @@ public class RexProgram {
     final List<RexNode> projectRexNodes =
         requireNonNull(input.getExpressionList("projects"), "projects");
     final List<RexLocalRef> projects = new ArrayList<>(projectRexNodes.size());
-    for (RexNode rexNode: projectRexNodes) {
+    for (RexNode rexNode : projectRexNodes) {
       projects.add((RexLocalRef) rexNode);
     }
     final RelDataType inputType = input.getRowType("inputRowType");
diff --git a/core/src/main/java/org/apache/calcite/runtime/SqlFunctions.java 
b/core/src/main/java/org/apache/calcite/runtime/SqlFunctions.java
index ceff33066a..8a0e04c6d1 100644
--- a/core/src/main/java/org/apache/calcite/runtime/SqlFunctions.java
+++ b/core/src/main/java/org/apache/calcite/runtime/SqlFunctions.java
@@ -1221,7 +1221,7 @@ public class SqlFunctions {
    */
   public static @Nullable String codePointsToString(List codePoints) {
     StringBuilder sb = new StringBuilder();
-    for (Object codePoint: codePoints) {
+    for (Object codePoint : codePoints) {
       if (codePoint == null) {
         return null;
       }
@@ -5314,7 +5314,7 @@ public class SqlFunctions {
   /** Support the MAP_FROM_ENTRIES function. */
   public static @Nullable Map mapFromEntries(List entries) {
     final Map map = new LinkedHashMap<>();
-    for (Object entry: entries) {
+    for (Object entry : entries) {
       if (entry == null) {
         return null;
       }
diff --git a/core/src/main/java/org/apache/calcite/sql/SqlDataTypeSpec.java 
b/core/src/main/java/org/apache/calcite/sql/SqlDataTypeSpec.java
index 3433113119..a1e68becc9 100644
--- a/core/src/main/java/org/apache/calcite/sql/SqlDataTypeSpec.java
+++ b/core/src/main/java/org/apache/calcite/sql/SqlDataTypeSpec.java
@@ -164,8 +164,9 @@ public class SqlDataTypeSpec extends SqlNode {
   /** Returns a copy of this data type specification with a given
    * nullability, extending the parser position. */
   public SqlDataTypeSpec withNullable(Boolean nullable, SqlParserPos pos) {
-    final SqlParserPos newPos = pos == SqlParserPos.ZERO ? this.pos
-        : this.pos.plus(pos);
+    final SqlParserPos newPos =
+        pos == SqlParserPos.ZERO ? this.pos
+            : this.pos.plus(pos);
     if (Objects.equals(nullable, this.nullable)
         && newPos.equals(this.pos)) {
       return this;
diff --git a/core/src/main/java/org/apache/calcite/sql/SqlIdentifier.java 
b/core/src/main/java/org/apache/calcite/sql/SqlIdentifier.java
index 988067d426..df19846efe 100644
--- a/core/src/main/java/org/apache/calcite/sql/SqlIdentifier.java
+++ b/core/src/main/java/org/apache/calcite/sql/SqlIdentifier.java
@@ -84,8 +84,9 @@ public class SqlIdentifier extends SqlNode {
     super(pos);
     this.names = ImmutableList.copyOf(names);
     this.collation = collation;
-    this.componentPositions = componentPositions == null ? null
-        : ImmutableList.copyOf(componentPositions);
+    this.componentPositions =
+        componentPositions == null ? null
+            : ImmutableList.copyOf(componentPositions);
     for (String name : names) {
       assert name != null;
     }
@@ -160,8 +161,9 @@ public class SqlIdentifier extends SqlNode {
    */
   public void setNames(List<String> names, @Nullable List<SqlParserPos> poses) 
{
     this.names = ImmutableList.copyOf(names);
-    this.componentPositions = poses == null ? null
-        : ImmutableList.copyOf(poses);
+    this.componentPositions =
+        poses == null ? null
+            : ImmutableList.copyOf(poses);
   }
 
   /** Returns an identifier that is the same as this except one modified name.
diff --git 
a/core/src/main/java/org/apache/calcite/sql/fun/SqlLibraryOperators.java 
b/core/src/main/java/org/apache/calcite/sql/fun/SqlLibraryOperators.java
index a674efb21c..c123c449cd 100644
--- a/core/src/main/java/org/apache/calcite/sql/fun/SqlLibraryOperators.java
+++ b/core/src/main/java/org/apache/calcite/sql/fun/SqlLibraryOperators.java
@@ -1326,7 +1326,7 @@ public abstract class SqlLibraryOperators {
       return SqlTypeUtil.createMapType(typeFactory, type, type, true);
     } else {
       final List<RelDataType> operandTypes = opBinding.collectOperandTypes();
-      for (RelDataType operandType: operandTypes) {
+      for (RelDataType operandType : operandTypes) {
         if (!SqlTypeUtil.isMap(operandType)) {
           throw opBinding.newError(
               RESOURCE.typesShouldAllBeMap(
diff --git a/core/src/main/java/org/apache/calcite/sql/type/ReturnTypes.java 
b/core/src/main/java/org/apache/calcite/sql/type/ReturnTypes.java
index 2f9a46d555..8fe9284ee9 100644
--- a/core/src/main/java/org/apache/calcite/sql/type/ReturnTypes.java
+++ b/core/src/main/java/org/apache/calcite/sql/type/ReturnTypes.java
@@ -1044,7 +1044,7 @@ public abstract class ReturnTypes {
         List<RelDataType> operandTypes = opBinding.collectOperandTypes();
         final RelDataTypeFactory typeFactory = opBinding.getTypeFactory();
         final RelDataTypeSystem typeSystem = typeFactory.getTypeSystem();
-        for (RelDataType operandType: operandTypes) {
+        for (RelDataType operandType : operandTypes) {
           int operandPrecision = operandType.getPrecision();
           amount = (long) operandPrecision + amount;
           if (operandPrecision == RelDataType.PRECISION_NOT_SPECIFIED) {
diff --git 
a/core/src/main/java/org/apache/calcite/sql/validate/IdentifierNamespace.java 
b/core/src/main/java/org/apache/calcite/sql/validate/IdentifierNamespace.java
index 62b1926d95..8bd130f282 100644
--- 
a/core/src/main/java/org/apache/calcite/sql/validate/IdentifierNamespace.java
+++ 
b/core/src/main/java/org/apache/calcite/sql/validate/IdentifierNamespace.java
@@ -158,8 +158,9 @@ public class IdentifierNamespace extends AbstractNamespace {
           // If previousResolve is null, we matched nothing case-sensitive and
           // everything case-insensitive, so the mismatch must have been at
           // position 0.
-          final int i = previousResolve == null ? 0
-              : previousResolve.path.stepCount();
+          final int i =
+              previousResolve == null ? 0
+                  : previousResolve.path.stepCount();
           final int offset = resolve.path.stepCount()
               + resolve.remainingNames.size() - names.size();
           final List<String> prefix =
diff --git 
a/core/src/main/java/org/apache/calcite/sql/validate/SqlValidatorImpl.java 
b/core/src/main/java/org/apache/calcite/sql/validate/SqlValidatorImpl.java
index 1e649a1f7f..f2f2f0646a 100644
--- a/core/src/main/java/org/apache/calcite/sql/validate/SqlValidatorImpl.java
+++ b/core/src/main/java/org/apache/calcite/sql/validate/SqlValidatorImpl.java
@@ -4901,7 +4901,7 @@ public class SqlValidatorImpl implements 
SqlValidatorWithHints {
 
       // Validate insert values against the view constraint.
       final List<SqlNode> values = ((SqlCall) source).getOperandList();
-      for (final int colIndex: constrainedTargetColumns) {
+      for (final int colIndex : constrainedTargetColumns) {
         final String colName = tableFields.get(colIndex).getName();
         final RelDataTypeField targetField = 
tableIndexToTargetField.get(colIndex);
         for (SqlNode row : values) {
diff --git a/core/src/main/java/org/apache/calcite/sql2rel/RelDecorrelator.java 
b/core/src/main/java/org/apache/calcite/sql2rel/RelDecorrelator.java
index 49de474cec..f084d279b7 100644
--- a/core/src/main/java/org/apache/calcite/sql2rel/RelDecorrelator.java
+++ b/core/src/main/java/org/apache/calcite/sql2rel/RelDecorrelator.java
@@ -644,9 +644,10 @@ public class RelDecorrelator implements ReflectiveVisitor {
             requireNonNull(combinedMap.get(oldPos),
                 () -> "combinedMap.get(" + oldPos + ")"));
       }
-      final int filterArg = oldAggCall.filterArg < 0 ? oldAggCall.filterArg
-          : requireNonNull(combinedMap.get(oldAggCall.filterArg),
-              () -> "combinedMap.get(" + oldAggCall.filterArg + ")");
+      final int filterArg =
+          oldAggCall.filterArg < 0 ? oldAggCall.filterArg
+              : requireNonNull(combinedMap.get(oldAggCall.filterArg),
+                  () -> "combinedMap.get(" + oldAggCall.filterArg + ")");
 
       newAggCalls.add(
           oldAggCall.adaptTo(newProject, aggArgs, filterArg,
@@ -2505,8 +2506,9 @@ public class RelDecorrelator implements ReflectiveVisitor 
{
           }
         }
 
-        int filterArg = aggCall.filterArg < 0 ? aggCall.filterArg
-            : aggCall.filterArg + groupCount;
+        int filterArg =
+            aggCall.filterArg < 0 ? aggCall.filterArg
+                : aggCall.filterArg + groupCount;
         newAggCalls.add(
             aggCall.adaptTo(joinOutputProject, argList, filterArg,
                 aggregate.getGroupCount(), groupCount));
diff --git 
a/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java 
b/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java
index 21d37ff115..1a1107b36d 100644
--- a/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java
+++ b/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java
@@ -5118,7 +5118,7 @@ public class SqlToRelConverter {
       setRoot(root, false);
       List<RegisterArgs> registerCopy = registered;
       registered = new ArrayList<>();
-      for (RegisterArgs reg: registerCopy) {
+      for (RegisterArgs reg : registerCopy) {
         RelNode relNode = reg.rel;
         relBuilder.push(relNode);
         final RelMetadataQuery mq = relBuilder.getCluster().getMetadataQuery();
diff --git a/core/src/main/java/org/apache/calcite/tools/RelBuilder.java 
b/core/src/main/java/org/apache/calcite/tools/RelBuilder.java
index 3e45b0cc92..cd5a87bb8f 100644
--- a/core/src/main/java/org/apache/calcite/tools/RelBuilder.java
+++ b/core/src/main/java/org/apache/calcite/tools/RelBuilder.java
@@ -2646,7 +2646,7 @@ public class RelBuilder {
     //      GROUPING SETS (c) produces value 3
     final Map<Integer, Set<ImmutableBitSet>> groupIdToGroupSets = new 
HashMap<>();
     int maxGroupId = 0;
-    for (Multiset.Entry<ImmutableBitSet> entry: groupSets.entrySet()) {
+    for (Multiset.Entry<ImmutableBitSet> entry : groupSets.entrySet()) {
       int groupId = entry.getCount() - 1;
       if (groupId > maxGroupId) {
         maxGroupId = groupId;
@@ -3895,8 +3895,9 @@ public class RelBuilder {
    */
   public RelBuilder hints(Iterable<RelHint> hints) {
     requireNonNull(hints, "hints");
-    final List<RelHint> relHintList = hints instanceof List ? (List<RelHint>) 
hints
-        : Lists.newArrayList(hints);
+    final List<RelHint> relHintList =
+        hints instanceof List ? (List<RelHint>) hints
+            : Lists.newArrayList(hints);
     if (relHintList.isEmpty()) {
       return this;
     }
@@ -4181,8 +4182,9 @@ public class RelBuilder {
         ImmutableBitSet groupSet, RelNode r) {
       List<Integer> args =
           registrar.registerExpressions(this.operands);
-      final int filterArg = this.filter == null ? -1
-          : registrar.registerExpression(this.filter);
+      final int filterArg =
+          this.filter == null ? -1
+              : registrar.registerExpression(this.filter);
       if (this.distinct && !this.aggFunction.isQuantifierAllowed()) {
         throw new IllegalArgumentException("DISTINCT not allowed");
       }
diff --git 
a/core/src/main/java/org/apache/calcite/util/graph/DefaultDirectedGraph.java 
b/core/src/main/java/org/apache/calcite/util/graph/DefaultDirectedGraph.java
index a5b0b97e37..b1590f9ed3 100644
--- a/core/src/main/java/org/apache/calcite/util/graph/DefaultDirectedGraph.java
+++ b/core/src/main/java/org/apache/calcite/util/graph/DefaultDirectedGraph.java
@@ -184,7 +184,7 @@ public class DefaultDirectedGraph<V, E extends DefaultEdge>
     }
 
     // remove all edges ref from this.edges
-    for (V v: collection) {
+    for (V v : collection) {
       edges.removeIf(e -> e.source.equals(v) || e.target.equals(v));
     }
   }
diff --git a/core/src/test/java/org/apache/calcite/plan/RelWriterTest.java 
b/core/src/test/java/org/apache/calcite/plan/RelWriterTest.java
index 592b6e93e4..4a1c05d24a 100644
--- a/core/src/test/java/org/apache/calcite/plan/RelWriterTest.java
+++ b/core/src/test/java/org/apache/calcite/plan/RelWriterTest.java
@@ -1355,11 +1355,11 @@ class RelWriterTest {
     final RelDataType type = 
rexBuilder.getTypeFactory().createSqlType(SqlTypeName.BIGINT);
     List<RexNode> partitionKeys = new ArrayList<>(partitionKeyNames.size());
     builder.scan(table);
-    for (String partitionkeyName: partitionKeyNames) {
+    for (String partitionkeyName : partitionKeyNames) {
       partitionKeys.add(builder.field(partitionkeyName));
     }
     List<RexFieldCollation> orderKeys = new ArrayList<>(orderKeyNames.size());
-    for (String orderKeyName: orderKeyNames) {
+    for (String orderKeyName : orderKeyNames) {
       orderKeys.add(new RexFieldCollation(builder.field(orderKeyName), 
ImmutableSet.of()));
     }
     final RelNode rel = builder
diff --git a/core/src/test/java/org/apache/calcite/sql/SqlNodeTest.java 
b/core/src/test/java/org/apache/calcite/sql/SqlNodeTest.java
index 6f6ddfad4e..459a11894c 100644
--- a/core/src/test/java/org/apache/calcite/sql/SqlNodeTest.java
+++ b/core/src/test/java/org/apache/calcite/sql/SqlNodeTest.java
@@ -68,7 +68,7 @@ class SqlNodeTest {
 
   private static <E> List<E> collect(Iterable<E> iterable) {
     final List<E> list = new ArrayList<>();
-    for (E e: iterable) {
+    for (E e : iterable) {
       list.add(e);
     }
     return list;
diff --git 
a/core/src/test/java/org/apache/calcite/test/MaterializedViewTester.java 
b/core/src/test/java/org/apache/calcite/test/MaterializedViewTester.java
index 839f21125a..146a8de6f3 100644
--- a/core/src/test/java/org/apache/calcite/test/MaterializedViewTester.java
+++ b/core/src/test/java/org/apache/calcite/test/MaterializedViewTester.java
@@ -79,7 +79,7 @@ public abstract class MaterializedViewTester {
     if (substitutes.stream()
         .noneMatch(sub -> checker.test(RelOptUtil.toString(sub)))) {
       StringBuilder substituteMessages = new StringBuilder();
-      for (RelNode sub: substitutes) {
+      for (RelNode sub : substitutes) {
         substituteMessages.append(RelOptUtil.toString(sub)).append("\n");
       }
       throw new AssertionError("Materialized view failed to be matched by 
optimized results:\n"
@@ -100,7 +100,7 @@ public abstract class MaterializedViewTester {
     }
     final StringBuilder errMsgBuilder = new StringBuilder();
     errMsgBuilder.append("Optimization succeeds out of expectation: ");
-    for (RelNode res: results) {
+    for (RelNode res : results) {
       errMsgBuilder.append(RelOptUtil.toString(res)).append("\n");
     }
     throw new AssertionError(errMsgBuilder.toString());
@@ -124,7 +124,7 @@ public abstract class MaterializedViewTester {
             RelFactories.LOGICAL_BUILDER.create(cluster, relOptSchema);
         final MaterializationService.DefaultTableFactory tableFactory =
             new MaterializationService.DefaultTableFactory();
-        for (Pair<String, String> pair: f.materializationList) {
+        for (Pair<String, String> pair : f.materializationList) {
           String sql = requireNonNull(pair.left, "sql");
           final RelNode mvRel = toRel(cluster, rootSchema, defaultSchema, sql);
           final Table table =
diff --git a/core/src/test/java/org/apache/calcite/test/MutableRelTest.java 
b/core/src/test/java/org/apache/calcite/test/MutableRelTest.java
index 6f625c106d..9614299b81 100644
--- a/core/src/test/java/org/apache/calcite/test/MutableRelTest.java
+++ b/core/src/test/java/org/apache/calcite/test/MutableRelTest.java
@@ -200,7 +200,7 @@ class MutableRelTest {
     MutableRel mutableRel =
         createMutableRel("select sal from emp where deptno = 10"
             + "union select sal from emp where ename like 'John%'");
-    for (MutableRel input: mutableRel.getInputs()) {
+    for (MutableRel input : mutableRel.getInputs()) {
       assertSame(input.getParent(), mutableRel);
     }
   }
diff --git a/core/src/test/java/org/apache/calcite/util/SourceTest.java 
b/core/src/test/java/org/apache/calcite/util/SourceTest.java
index 730766d8d5..4f4f775ebf 100644
--- a/core/src/test/java/org/apache/calcite/util/SourceTest.java
+++ b/core/src/test/java/org/apache/calcite/util/SourceTest.java
@@ -67,7 +67,7 @@ class SourceTest {
    */
   @Test void charSource() throws IOException {
     Source source = Sources.fromCharSource(CharSource.wrap("a\nb"));
-    for (Reader r: Arrays.asList(source.reader(),
+    for (Reader r : Arrays.asList(source.reader(),
         new InputStreamReader(source.openStream(), 
StandardCharsets.UTF_8.name()))) {
       try (BufferedReader reader = new BufferedReader(r)) {
         assertEquals("a", reader.readLine());
diff --git a/core/src/test/resources/sql/cast-with-format.iq 
b/core/src/test/resources/sql/cast-with-format.iq
index 403aea2ee1..9e94a26276 100644
--- a/core/src/test/resources/sql/cast-with-format.iq
+++ b/core/src/test/resources/sql/cast-with-format.iq
@@ -2008,6 +2008,7 @@ select cast("1985-\b\n\r\t12-09" as
 EXPR$0
 1985-12-09
 !ok
+# lint:skip 25 (tab characters)
 select cast(cast("1985-12-10" as date) as string
     format 'YYYY"\ttext\n"MM-DD');
 EXPR$0
diff --git 
a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidTable.java 
b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidTable.java
index c32f2d6c8d..58d844ce11 100644
--- a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidTable.java
+++ b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidTable.java
@@ -91,11 +91,14 @@ public class DruidTable extends AbstractTable implements 
TranslatableTable {
     this.dataSource = Objects.requireNonNull(dataSource, "dataSource");
     this.protoRowType = protoRowType;
     this.metricFieldNames = ImmutableSet.copyOf(metricFieldNames);
-    this.intervals = intervals != null ? ImmutableList.copyOf(intervals)
-        : ImmutableList.of(DEFAULT_INTERVAL);
-    this.complexMetrics = complexMetrics == null ? ImmutableMap.of()
+    this.intervals =
+        intervals == null ? ImmutableList.of(DEFAULT_INTERVAL)
+            : ImmutableList.copyOf(intervals);
+    this.complexMetrics =
+        complexMetrics == null ? ImmutableMap.of()
             : ImmutableMap.copyOf(complexMetrics);
-    this.allFields = allFields == null ? ImmutableMap.of()
+    this.allFields =
+        allFields == null ? ImmutableMap.of()
             : ImmutableMap.copyOf(allFields);
   }
 
diff --git 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchJson.java
 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchJson.java
index f28db95cb7..0cc9f0b399 100644
--- 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchJson.java
+++ 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchJson.java
@@ -718,7 +718,7 @@ final class ElasticsearchJson {
         throws JsonProcessingException {
 
       List<Bucket> buckets = new ArrayList<>(nodes.size());
-      for (JsonNode b: nodes) {
+      for (JsonNode b : nodes) {
         buckets.add(parseBucket(parser, name, (ObjectNode) b));
       }
 
diff --git 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchMethod.java
 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchMethod.java
index f50823fe63..be49ac0ffe 100644
--- 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchMethod.java
+++ 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchMethod.java
@@ -47,7 +47,7 @@ enum ElasticsearchMethod {
 
   static {
     final ImmutableMap.Builder<Method, ElasticsearchMethod> builder = 
ImmutableMap.builder();
-    for (ElasticsearchMethod value: ElasticsearchMethod.values()) {
+    for (ElasticsearchMethod value : ElasticsearchMethod.values()) {
       builder.put(value.method, value);
     }
     MAP = builder.build();
diff --git 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchProject.java
 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchProject.java
index 5aadcbceca..e9350874f1 100644
--- 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchProject.java
+++ 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchProject.java
@@ -72,7 +72,7 @@ public class ElasticsearchProject extends Project implements 
ElasticsearchRel {
     final List<String> scriptFields = new ArrayList<>();
     // registers wherever "select *" is present
     boolean hasSelectStar = false;
-    for (Pair<RexNode, String> pair: getNamedProjects()) {
+    for (Pair<RexNode, String> pair : getNamedProjects()) {
       final String name = pair.right;
       final String expr = pair.left.accept(translator);
 
@@ -115,7 +115,7 @@ public class ElasticsearchProject extends Project 
implements ElasticsearchRel {
       query.append("\"_source\" : [").append(findString).append("]");
     } else {
       // if scripted fields are present, ES ignores _source attribute
-      for (String field: fields) {
+      for (String field : fields) {
         scriptFields.add(ElasticsearchRules.quote(field) + ":{\"script\": "
                 // _source (ES2) vs params._source (ES5)
                 + "\"" + implementor.elasticsearchTable.scriptedFieldPrefix() 
+ "."
diff --git 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTable.java
 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTable.java
index dd57b5e079..bcf4c18e82 100644
--- 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTable.java
+++ 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTable.java
@@ -121,7 +121,7 @@ public class ElasticsearchTable extends 
AbstractQueryableTable implements Transl
 
     final ObjectNode query = mapper.createObjectNode();
     // manually parse from previously concatenated string
-    for (String op: ops) {
+    for (String op : ops) {
       query.setAll((ObjectNode) mapper.readTree(op));
     }
 
@@ -173,7 +173,7 @@ public class ElasticsearchTable extends 
AbstractQueryableTable implements Transl
 
     final ObjectNode query = mapper.createObjectNode();
     // manually parse into JSON from previously concatenated strings
-    for (String op: ops) {
+    for (String op : ops) {
       query.setAll((ObjectNode) mapper.readTree(op));
     }
 
@@ -206,7 +206,7 @@ public class ElasticsearchTable extends 
AbstractQueryableTable implements Transl
 
     // construct nested aggregations node(s)
     ObjectNode parent = query.withObject("/" + AGGREGATIONS);
-    for (String name: orderedGroupBy) {
+    for (String name : orderedGroupBy) {
       final String aggName = "g_" + name;
       fieldMap.put(aggName, name);
 
@@ -272,7 +272,7 @@ public class ElasticsearchTable extends 
AbstractQueryableTable implements Transl
       ElasticsearchJson.visitValueNodes(res.aggregations(), m -> {
         // using 'Collectors.toMap' will trigger Java 8 bug here
         Map<String, Object> newMap = new LinkedHashMap<>();
-        for (String key: m.keySet()) {
+        for (String key : m.keySet()) {
           newMap.put(fieldMap.getOrDefault(key, key), m.get(key));
         }
         result.add(newMap);
diff --git 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTableScan.java
 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTableScan.java
index 668bdd68e4..c68ab9c1f6 100644
--- 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTableScan.java
+++ 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/ElasticsearchTableScan.java
@@ -81,7 +81,7 @@ public class ElasticsearchTableScan extends TableScan 
implements ElasticsearchRe
 
   @Override public void register(RelOptPlanner planner) {
     planner.addRule(ElasticsearchToEnumerableConverterRule.INSTANCE);
-    for (RelOptRule rule: ElasticsearchRules.RULES) {
+    for (RelOptRule rule : ElasticsearchRules.RULES) {
       planner.addRule(rule);
     }
 
diff --git 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/QueryBuilders.java
 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/QueryBuilders.java
index e5d2c04d84..e3f08f1876 100644
--- 
a/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/QueryBuilders.java
+++ 
b/elasticsearch/src/main/java/org/apache/calcite/adapter/elasticsearch/QueryBuilders.java
@@ -282,7 +282,7 @@ class QueryBuilders {
         clauses.get(0).writeJson(gen);
       } else {
         gen.writeArrayFieldStart(field);
-        for (QueryBuilder clause: clauses) {
+        for (QueryBuilder clause : clauses) {
           clause.writeJson(gen);
         }
         gen.writeEndArray();
@@ -331,7 +331,7 @@ class QueryBuilders {
       generator.writeStartObject();
       generator.writeFieldName(fieldName);
       generator.writeStartArray();
-      for (Object value: values) {
+      for (Object value : values) {
         writeObject(generator, value);
       }
       generator.writeEndArray();
@@ -384,7 +384,7 @@ class QueryBuilders {
       generator.writeStartObject();
       generator.writeFieldName(fieldName);
       generator.writeStartArray();
-      for (Object value: values) {
+      for (Object value : values) {
         writeObject(generator, value);
       }
       generator.writeEndArray();
diff --git 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/AggregationTest.java
 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/AggregationTest.java
index 35316b7c1f..b7df48e946 100644
--- 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/AggregationTest.java
+++ 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/AggregationTest.java
@@ -77,7 +77,7 @@ class AggregationTest {
         .enable(JsonParser.Feature.ALLOW_SINGLE_QUOTES); // avoid too much 
quoting
 
     final List<ObjectNode> docs = new ArrayList<>();
-    for (String text: Arrays.asList(doc1, doc2, doc3)) {
+    for (String text : Arrays.asList(doc1, doc2, doc3)) {
       docs.add((ObjectNode) mapper.readTree(text));
     }
 
diff --git 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchNode.java
 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchNode.java
index a47b704a76..e79e9f33dc 100644
--- 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchNode.java
+++ 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchNode.java
@@ -150,7 +150,7 @@ class EmbeddedElasticsearchNode implements AutoCloseable {
   @Override public void close() throws Exception {
     node.close();
     // cleanup data dirs
-    for (String name: Arrays.asList("path.data", "path.home")) {
+    for (String name : Arrays.asList("path.data", "path.home")) {
       if (node.settings().get(name) != null) {
         File file = new File(node.settings().get(name));
         if (file.exists()) {
diff --git 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchPolicy.java
 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchPolicy.java
index fb84809443..5df057aa6b 100644
--- 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchPolicy.java
+++ 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/EmbeddedElasticsearchPolicy.java
@@ -119,7 +119,7 @@ class EmbeddedElasticsearchPolicy {
 
     ObjectNode properties = mappings.withObject("/mappings")
         .withObject("/properties");
-    for (Map.Entry<String, String> entry: mapping.entrySet()) {
+    for (Map.Entry<String, String> entry : mapping.entrySet()) {
       applyMapping(properties, entry.getKey(), entry.getValue());
     }
 
@@ -206,7 +206,7 @@ class EmbeddedElasticsearchPolicy {
     }
 
     List<String> bulk = new ArrayList<>(documents.size() * 2);
-    for (ObjectNode doc: documents) {
+    for (ObjectNode doc : documents) {
       bulk.add(String.format(Locale.ROOT, "{\"index\": {\"_index\":\"%s\"}}", 
index));
       bulk.add(mapper().writeValueAsString(doc));
     }
diff --git 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/ScrollingTest.java
 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/ScrollingTest.java
index 7106361973..81c71bbd45 100644
--- 
a/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/ScrollingTest.java
+++ 
b/elasticsearch/src/test/java/org/apache/calcite/adapter/elasticsearch/ScrollingTest.java
@@ -86,7 +86,7 @@ class ScrollingTest {
     final String query = String.format(Locale.ROOT, "select _MAP['value'] as v 
from "
         + "\"elastic\".\"%s\"", NAME);
 
-    for (int fetchSize: Arrays.asList(1, 2, 3, SIZE / 2, SIZE - 1, SIZE, SIZE 
+ 1, 2 * SIZE)) {
+    for (int fetchSize : Arrays.asList(1, 2, 3, SIZE / 2, SIZE - 1, SIZE, SIZE 
+ 1, 2 * SIZE)) {
       CalciteAssert.that()
           .with(newConnectionFactory(fetchSize))
           .query(query)
diff --git 
a/elasticsearch/src/test/java/org/apache/calcite/test/ElasticsearchChecker.java 
b/elasticsearch/src/test/java/org/apache/calcite/test/ElasticsearchChecker.java
index 1e5189ff17..e74a5711b8 100644
--- 
a/elasticsearch/src/test/java/org/apache/calcite/test/ElasticsearchChecker.java
+++ 
b/elasticsearch/src/test/java/org/apache/calcite/test/ElasticsearchChecker.java
@@ -55,8 +55,8 @@ public class ElasticsearchChecker {
   public static Consumer<List> elasticsearchChecker(final String... strings) {
     Objects.requireNonNull(strings, "strings");
     return a -> {
-      ObjectNode actual = a == null || a.isEmpty() ? null
-            : ((ObjectNode) a.get(0));
+      ObjectNode actual =
+          a == null || a.isEmpty() ? null : (ObjectNode) a.get(0);
 
       actual = expandDots(actual);
       try {
diff --git 
a/file/src/main/java/org/apache/calcite/adapter/file/CsvEnumerator.java 
b/file/src/main/java/org/apache/calcite/adapter/file/CsvEnumerator.java
index 73992525a8..effba11366 100644
--- a/file/src/main/java/org/apache/calcite/adapter/file/CsvEnumerator.java
+++ b/file/src/main/java/org/apache/calcite/adapter/file/CsvEnumerator.java
@@ -93,8 +93,9 @@ public class CsvEnumerator<E> implements Enumerator<E> {
       @Nullable String @Nullable [] filterValues, RowConverter<E> 
rowConverter) {
     this.cancelFlag = cancelFlag;
     this.rowConverter = rowConverter;
-    this.filterValues = filterValues == null ? null
-        : ImmutableNullableList.copyOf(filterValues);
+    this.filterValues =
+        filterValues == null ? null
+            : ImmutableNullableList.copyOf(filterValues);
     try {
       if (stream) {
         this.reader = new CsvStreamReader(source);
diff --git a/file/src/main/java/org/apache/calcite/adapter/file/FileSchema.java 
b/file/src/main/java/org/apache/calcite/adapter/file/FileSchema.java
index a01d3efcc2..f032698098 100644
--- a/file/src/main/java/org/apache/calcite/adapter/file/FileSchema.java
+++ b/file/src/main/java/org/apache/calcite/adapter/file/FileSchema.java
@@ -49,8 +49,9 @@ class FileSchema extends AbstractSchema {
    */
   FileSchema(SchemaPlus parentSchema, String name, File baseDirectory,
       List<Map<String, Object>> tables) {
-    this.tables = tables == null ? ImmutableList.of()
-        : ImmutableList.copyOf(tables);
+    this.tables =
+        tables == null ? ImmutableList.of()
+            : ImmutableList.copyOf(tables);
     this.baseDirectory = baseDirectory;
   }
 
diff --git 
a/innodb/src/main/java/org/apache/calcite/adapter/innodb/IndexCondition.java 
b/innodb/src/main/java/org/apache/calcite/adapter/innodb/IndexCondition.java
index 18b5117c5c..d650318a86 100644
--- a/innodb/src/main/java/org/apache/calcite/adapter/innodb/IndexCondition.java
+++ b/innodb/src/main/java/org/apache/calcite/adapter/innodb/IndexCondition.java
@@ -31,6 +31,8 @@ import java.util.Objects;
 
 import static com.google.common.base.Preconditions.checkState;
 
+import static java.util.Objects.requireNonNull;
+
 /**
  * Index condition.
  *
@@ -95,10 +97,11 @@ public class IndexCondition {
         remainderConditions == null ? ImmutableList.of()
             : ImmutableList.copyOf(remainderConditions);
     this.queryType = queryType;
-    this.pointQueryKey = pointQueryKey == null ? ImmutableList.of()
+    this.pointQueryKey =
+        pointQueryKey == null ? ImmutableList.of()
             : ImmutableList.copyOf(pointQueryKey);
-    this.rangeQueryLowerOp = Objects.requireNonNull(rangeQueryLowerOp, 
"rangeQueryLowerOp");
-    this.rangeQueryUpperOp = Objects.requireNonNull(rangeQueryUpperOp, 
"rangeQueryUpperOp");
+    this.rangeQueryLowerOp = requireNonNull(rangeQueryLowerOp, 
"rangeQueryLowerOp");
+    this.rangeQueryUpperOp = requireNonNull(rangeQueryUpperOp, 
"rangeQueryUpperOp");
     this.rangeQueryLowerKey = ImmutableList.copyOf(rangeQueryLowerKey);
     this.rangeQueryUpperKey = ImmutableList.copyOf(rangeQueryUpperKey);
   }
diff --git a/innodb/src/test/resources/README.md 
b/innodb/src/test/resources/README.md
index 90b4225e8c..fea57421f0 100644
--- a/innodb/src/test/resources/README.md
+++ b/innodb/src/test/resources/README.md
@@ -30,14 +30,14 @@ innodb/src/test/resources/data/test_types.ibd
 ```
 
 You can recreate `DEPT.ibd` and `EMP.ibd` by the following steps.
-1.     Make sure a MySQL server is running, follow the 
[Prerequisites](#Prerequisites). Note that MySQL version should be 5.7, 8.0 or 
higher.
-2.     Run `mysql -u<username> -p<password> -h<hostname> -P<port> <dbname> < 
innodb/src/test/resources/scott.sql`.
-3.     Copy `DEPT.ibd` and `EMP.ibd` from MySQL data directory (for example, 
`/usr/local/mysql/data/<dbname>`).
+1. Make sure a MySQL server is running, follow the 
[Prerequisites](#Prerequisites). Note that MySQL version should be 5.7, 8.0 or 
higher.
+2. Run `mysql -u<username> -p<password> -h<hostname> -P<port> <dbname> < 
innodb/src/test/resources/scott.sql`.
+3. Copy `DEPT.ibd` and `EMP.ibd` from MySQL data directory (for example, 
`/usr/local/mysql/data/<dbname>`).
 
 You can recreate `test_types.ibd` by the following steps.
-1.     Make sure a MySQL server is running, follow the 
[Prerequisites](#Prerequisites). Note that MySQL version should be 5.7, please 
do not use 8.0 since there is a limitation in `innodb-java-reader`, which does 
not support TEXT/BLOB yet (will be supported in the future plan).
-2.     Run `mysql -u<username> -p<password> -h<hostname> -P<port> <dbname> < 
innodb/src/test/resources/data_types.sql`.
-3.     Copy `test_types.ibd` from MySQL data directory (for example, 
`/usr/local/mysql/data/<dbname>`).
+1. Make sure a MySQL server is running, follow the 
[Prerequisites](#Prerequisites). Note that MySQL version should be 5.7, please 
do not use 8.0 since there is a limitation in `innodb-java-reader`, which does 
not support TEXT/BLOB yet (will be supported in the future plan).
+2. Run `mysql -u<username> -p<password> -h<hostname> -P<port> <dbname> < 
innodb/src/test/resources/data_types.sql`.
+3. Copy `test_types.ibd` from MySQL data directory (for example, 
`/usr/local/mysql/data/<dbname>`).
 
 # Prerequisites
 * `innodb_file_per_table` should set to `ON`, `innodb_file_per_table` is 
enabled by default in MySQL 5.6 and higher.
diff --git 
a/linq4j/src/main/java/org/apache/calcite/linq4j/tree/TryStatement.java 
b/linq4j/src/main/java/org/apache/calcite/linq4j/tree/TryStatement.java
index e36674b7f4..045007806c 100644
--- a/linq4j/src/main/java/org/apache/calcite/linq4j/tree/TryStatement.java
+++ b/linq4j/src/main/java/org/apache/calcite/linq4j/tree/TryStatement.java
@@ -42,7 +42,7 @@ public class TryStatement extends Statement {
     shuttle = shuttle.preVisit(this);
     Statement body1 = body.accept(shuttle);
     List<CatchBlock> catchBlocks1 = new ArrayList<>();
-    for (CatchBlock cb: catchBlocks) {
+    for (CatchBlock cb : catchBlocks) {
       Statement cbBody = cb.body.accept(shuttle);
       catchBlocks1.add(
           Expressions.catch_(cb.parameter, cbBody));
diff --git 
a/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoTableScan.java 
b/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoTableScan.java
index 17799e4b61..03e7efd028 100644
--- 
a/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoTableScan.java
+++ 
b/mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoTableScan.java
@@ -74,8 +74,9 @@ public class MongoTableScan extends TableScan implements 
MongoRel {
   @Override public @Nullable RelOptCost computeSelfCost(RelOptPlanner planner,
       RelMetadataQuery mq) {
     // scans with a small project list are cheaper
-    final float f = projectRowType == null ? 1f
-        : (float) projectRowType.getFieldCount() / 100f;
+    final float f =
+        projectRowType == null ? 1f
+            : (float) projectRowType.getFieldCount() / 100f;
     return super.computeSelfCost(planner, mq).multiplyBy(.1 * f);
   }
 
diff --git a/plus/src/test/java/org/apache/calcite/slt/SqlLogicTests.java 
b/plus/src/test/java/org/apache/calcite/slt/SqlLogicTests.java
index 7e6ee0c36e..c19d490ff5 100644
--- a/plus/src/test/java/org/apache/calcite/slt/SqlLogicTests.java
+++ b/plus/src/test/java/org/apache/calcite/slt/SqlLogicTests.java
@@ -177,7 +177,7 @@ public class SqlLogicTests {
       List<TestSummary> results = new ArrayList<>(this.testResults.values());
       results.sort(Comparator.comparing(left -> left.file));
       StringBuilder result = new StringBuilder();
-      for (TestSummary summary: results) {
+      for (TestSummary summary : results) {
         result.append(summary.toString());
         result.append(System.lineSeparator());
       }
@@ -291,7 +291,7 @@ public class SqlLogicTests {
    */
   private List<DynamicTest> generateTests(Set<String> testFiles) {
     List<DynamicTest> result = new ArrayList<>();
-    for (String test: testFiles) {
+    for (String test : testFiles) {
       DynamicTest dynamicTest = DynamicTest.dynamicTest(test, () -> 
runTestFile(test));
       result.add(dynamicTest);
     }
diff --git 
a/redis/src/main/java/org/apache/calcite/adapter/redis/RedisTable.java 
b/redis/src/main/java/org/apache/calcite/adapter/redis/RedisTable.java
index cca76898c5..30f57a0d45 100644
--- a/redis/src/main/java/org/apache/calcite/adapter/redis/RedisTable.java
+++ b/redis/src/main/java/org/apache/calcite/adapter/redis/RedisTable.java
@@ -60,8 +60,9 @@ public class RedisTable extends AbstractTable
     this.schema = schema;
     this.tableName = tableName;
     this.protoRowType = protoRowType;
-    this.allFields = allFields == null ? ImmutableMap.of()
-        : ImmutableMap.copyOf(allFields);
+    this.allFields =
+        allFields == null ? ImmutableMap.of()
+            : ImmutableMap.copyOf(allFields);
     this.dataFormat = dataFormat;
     this.redisConfig = redisConfig;
   }
diff --git 
a/server/src/main/java/org/apache/calcite/server/ServerDdlExecutor.java 
b/server/src/main/java/org/apache/calcite/server/ServerDdlExecutor.java
index 467fc8ce27..d4dcf61c67 100644
--- a/server/src/main/java/org/apache/calcite/server/ServerDdlExecutor.java
+++ b/server/src/main/java/org/apache/calcite/server/ServerDdlExecutor.java
@@ -146,8 +146,9 @@ public class ServerDdlExecutor extends DdlExecutorImpl {
       path = Util.skipLast(id.names);
       name = Util.last(id.names);
     }
-    CalciteSchema schema = mutable ? context.getMutableRootSchema()
-        : context.getRootSchema();
+    CalciteSchema schema =
+        mutable ? context.getMutableRootSchema()
+            : context.getRootSchema();
     for (String p : path) {
       schema = schema.getSubSchema(p, true);
     }
diff --git a/site/_docs/innodb_adapter.md b/site/_docs/innodb_adapter.md
index 9569e50016..58ef596526 100644
--- a/site/_docs/innodb_adapter.md
+++ b/site/_docs/innodb_adapter.md
@@ -61,9 +61,9 @@ possible.
 
 -------------------- File System --------------------
 
-       +------------+      +-----+
-       | .ibd files | ...  |     |    InnoDB Data files
-       +------------+      +-----+
+        +------------+      +-----+
+        | .ibd files | ...  |     |    InnoDB Data files
+        +------------+      +-----+
 
 {% endhighlight %}
 
diff --git a/testkit/src/main/java/org/apache/calcite/test/MockDdlExecutor.java 
b/testkit/src/main/java/org/apache/calcite/test/MockDdlExecutor.java
index f3aa437b13..db4463d8fa 100644
--- a/testkit/src/main/java/org/apache/calcite/test/MockDdlExecutor.java
+++ b/testkit/src/main/java/org/apache/calcite/test/MockDdlExecutor.java
@@ -93,8 +93,9 @@ public class MockDdlExecutor extends DdlExecutorImpl {
       path = Util.skipLast(id.names);
       name = Util.last(id.names);
     }
-    CalciteSchema schema = mutable ? context.getMutableRootSchema()
-        : context.getRootSchema();
+    CalciteSchema schema =
+        mutable ? context.getMutableRootSchema()
+            : context.getRootSchema();
     for (String p : path) {
       schema = requireNonNull(schema.getSubSchema(p, true));
     }

Reply via email to