This is an automated email from the ASF dual-hosted git repository.
rubenql pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/calcite.git
The following commit(s) were added to refs/heads/master by this push:
new 1f39ffa [CALCITE-4453] RexExecutorImpl#compile should use
RexBuilder's type factory if possible
1f39ffa is described below
commit 1f39ffacb53dc6799edac61f72b23997cb8a88d9
Author: rubenada <[email protected]>
AuthorDate: Mon Jan 4 13:19:49 2021 +0000
[CALCITE-4453] RexExecutorImpl#compile should use RexBuilder's type factory
if possible
---
core/src/main/java/org/apache/calcite/rex/RexExecutorImpl.java | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/core/src/main/java/org/apache/calcite/rex/RexExecutorImpl.java
b/core/src/main/java/org/apache/calcite/rex/RexExecutorImpl.java
index 0604954..9f9cf3f 100644
--- a/core/src/main/java/org/apache/calcite/rex/RexExecutorImpl.java
+++ b/core/src/main/java/org/apache/calcite/rex/RexExecutorImpl.java
@@ -76,8 +76,10 @@ public class RexExecutorImpl implements RexExecutor {
programBuilder.addProject(
node, "c" + programBuilder.getProjectList().size());
}
- final JavaTypeFactoryImpl javaTypeFactory =
- new JavaTypeFactoryImpl(rexBuilder.getTypeFactory().getTypeSystem());
+ final RelDataTypeFactory typeFactory = rexBuilder.getTypeFactory();
+ final JavaTypeFactory javaTypeFactory = typeFactory instanceof
JavaTypeFactory
+ ? (JavaTypeFactory) typeFactory
+ : new JavaTypeFactoryImpl(typeFactory.getTypeSystem());
final BlockBuilder blockBuilder = new BlockBuilder();
final ParameterExpression root0_ =
Expressions.parameter(Object.class, "root0");