[
https://issues.apache.org/jira/browse/FLINK-24761?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Caizhi Weng updated FLINK-24761:
--------------------------------
Component/s: (was: Table SQL / Planner)
Table SQL / Runtime
> Fix PartitionPruner code gen compile fail
> -----------------------------------------
>
> Key: FLINK-24761
> URL: https://issues.apache.org/jira/browse/FLINK-24761
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Runtime
> Affects Versions: 1.13.1
> Reporter: tartarus
> Assignee: tartarus
> Priority: Major
>
> {color:#4c9aff}PartitionPruner{color} compile code use
> {color:#de350b}AppClassLoader{color} (Obtained by getClass.getClassLoader)
> but {color:#4c9aff}org.apache.flink.table.functions.hive.HiveGenericUDF
> {color:#172b4d}is in user's jar, so classloader is
> {color:#de350b}UserCodeClassLoader{color}, {color}{color}
> So compile fail.
> we need change
> {code:java}
> val function = genFunction.newInstance(getClass.getClassLoader)
> {code}
> to
> {code:java}
> val function =
> genFunction.newInstance(Thread.currentThread().getContextClassLoader)
> {code}
> The following is the error message:
> {code:java}
> org.apache.flink.util.FlinkRuntimeException:
> org.apache.flink.api.common.InvalidProgramException: Table program cannot be
> compiled. This is a bug. Please file an issue.
> at
> org.apache.flink.table.runtime.generated.CompileUtils.compile(CompileUtils.java:76)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.GeneratedClass.compile(GeneratedClass.java:98)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.GeneratedClass.newInstance(GeneratedClass.java:69)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.utils.PartitionPruner$.prunePartitions(PartitionPruner.scala:112)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.utils.PartitionPruner.prunePartitions(PartitionPruner.scala)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.rules.logical.PushPartitionIntoTableSourceScanRule.lambda$onMatch$3(PushPartitionIntoTableSourceScanRule.java:163)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.rules.logical.PushPartitionIntoTableSourceScanRule.readPartitionFromCatalogWithoutFilterAndPrune(PushPartitionIntoTableSourceScanRule.java:373)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.rules.logical.PushPartitionIntoTableSourceScanRule.readPartitionFromCatalogAndPrune(PushPartitionIntoTableSourceScanRule.java:351)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.rules.logical.PushPartitionIntoTableSourceScanRule.readPartitionsAndPrune(PushPartitionIntoTableSourceScanRule.java:303)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.rules.logical.PushPartitionIntoTableSourceScanRule.onMatch(PushPartitionIntoTableSourceScanRule.java:171)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.AbstractRelOptPlanner.fireRule(AbstractRelOptPlanner.java:333)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.hep.HepPlanner.applyRule(HepPlanner.java:542)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.hep.HepPlanner.applyRules(HepPlanner.java:407)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.hep.HepPlanner.executeInstruction(HepPlanner.java:243)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.hep.HepInstruction$RuleInstance.execute(HepInstruction.java:127)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.hep.HepPlanner.executeProgram(HepPlanner.java:202)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.calcite.plan.hep.HepPlanner.findBestExp(HepPlanner.java:189)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkHepProgram.optimize(FlinkHepProgram.scala:69)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkHepRuleSetProgram.optimize(FlinkHepRuleSetProgram.scala:87)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkGroupProgram$$anonfun$optimize$1$$anonfun$apply$1.apply(FlinkGroupProgram.scala:63)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkGroupProgram$$anonfun$optimize$1$$anonfun$apply$1.apply(FlinkGroupProgram.scala:60)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.Iterator$class.foreach(Iterator.scala:891)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkGroupProgram$$anonfun$optimize$1.apply(FlinkGroupProgram.scala:60)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkGroupProgram$$anonfun$optimize$1.apply(FlinkGroupProgram.scala:55)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.immutable.Range.foreach(Range.scala:160)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkGroupProgram.optimize(FlinkGroupProgram.scala:55)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram$$anonfun$optimize$1.apply(FlinkChainedProgram.scala:62)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram$$anonfun$optimize$1.apply(FlinkChainedProgram.scala:58)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.Iterator$class.foreach(Iterator.scala:891)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:157)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram.optimize(FlinkChainedProgram.scala:57)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.BatchCommonSubGraphBasedOptimizer.optimizeTree(BatchCommonSubGraphBasedOptimizer.scala:87)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.BatchCommonSubGraphBasedOptimizer.org$apache$flink$table$planner$plan$optimize$BatchCommonSubGraphBasedOptimizer$$optimizeBlock(BatchCommonSubGraphBasedOptimizer.scala:58)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.BatchCommonSubGraphBasedOptimizer$$anonfun$doOptimize$1.apply(BatchCommonSubGraphBasedOptimizer.scala:46)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.BatchCommonSubGraphBasedOptimizer$$anonfun$doOptimize$1.apply(BatchCommonSubGraphBasedOptimizer.scala:46)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at scala.collection.immutable.List.foreach(List.scala:392)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.BatchCommonSubGraphBasedOptimizer.doOptimize(BatchCommonSubGraphBasedOptimizer.scala:46)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.optimize.CommonSubGraphBasedOptimizer.optimize(CommonSubGraphBasedOptimizer.scala:77)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.delegation.PlannerBase.optimize(PlannerBase.scala:279)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:163)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1518)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:740)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:856)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.TableEnvironmentImpl.executeSql(TableEnvironmentImpl.java:730)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at batchProcess.BatchSqlJob.main(BatchSqlJob.java:74)
> ~[kuaishou-batch-streaming-integration-1.0-SNAPSHOT_v_1.jar:1.0-SNAPSHOT]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[?:1.8.0_102]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> ~[?:1.8.0_102]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> ~[?:1.8.0_102]
> at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_102]
> at
> org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:357)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:223)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.client.ClientUtils.executeProgram(ClientUtils.java:114)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:812)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:246)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.client.cli.CliFrontend.parseAndRun(CliFrontend.java:1054)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.client.cli.CliFrontend.lambda$main$10(CliFrontend.java:1132)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at java.security.AccessController.doPrivileged(Native Method)
> ~[?:1.8.0_102]
> at javax.security.auth.Subject.doAs(Subject.java:422) [?:1.8.0_102]
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1796)
> [hadoop-common-2.6.0U41.3-cdh5.10.0-hotfix1.jar:?]
> at
> org.apache.flink.runtime.security.contexts.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41)
> [flink-dist_2.11-1.13.1.jar:1.13.1]
> at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1132)
> [flink-dist_2.11-1.13.1.jar:1.13.1]
> Caused by:
> org.apache.flink.shaded.guava18.com.google.common.util.concurrent.UncheckedExecutionException:
> org.apache.flink.api.common.InvalidProgramException: Table program cannot be
> compiled. This is a bug. Please file an issue.
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2203)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache.get(LocalCache.java:3937)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4739)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.CompileUtils.compile(CompileUtils.java:74)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> ... 77 more
> Caused by: org.apache.flink.api.common.InvalidProgramException: Table program
> cannot be compiled. This is a bug. Please file an issue.
> at
> org.apache.flink.table.runtime.generated.CompileUtils.doCompile(CompileUtils.java:89)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.CompileUtils.lambda$compile$1(CompileUtils.java:74)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4742)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache.get(LocalCache.java:3937)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4739)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.CompileUtils.compile(CompileUtils.java:74)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> ... 77 more
> Caused by: org.codehaus.commons.compiler.CompileException: Line 32, Column
> 30: Cannot determine simple type name "org"
> at
> org.codehaus.janino.UnitCompiler.compileError(UnitCompiler.java:12211)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6833)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6594)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6607)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6607)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6607)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6607)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6607)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.getReferenceType(UnitCompiler.java:6607)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.getType2(UnitCompiler.java:6573)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$13900(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$1.visitReferenceType(UnitCompiler.java:6481)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$1.visitReferenceType(UnitCompiler.java:6476)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$ReferenceType.accept(Java.java:3928)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22.visitType(UnitCompiler.java:6476)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22.visitType(UnitCompiler.java:6469)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$ReferenceType.accept(Java.java:3927)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.getType(UnitCompiler.java:6469)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$1300(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler$25.getType(UnitCompiler.java:8271)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.getType2(UnitCompiler.java:6873)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$14400(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2$1.visitFieldAccess(UnitCompiler.java:6499)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2$1.visitFieldAccess(UnitCompiler.java:6494)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$FieldAccess.accept(Java.java:4310)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2.visitLvalue(UnitCompiler.java:6494)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2.visitLvalue(UnitCompiler.java:6490)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$Lvalue.accept(Java.java:4148)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22.visitRvalue(UnitCompiler.java:6490)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22.visitRvalue(UnitCompiler.java:6469)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$Rvalue.accept(Java.java:4116)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.getType(UnitCompiler.java:6469)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.getType2(UnitCompiler.java:6855)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$14200(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2$1.visitAmbiguousName(UnitCompiler.java:6497)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2$1.visitAmbiguousName(UnitCompiler.java:6494)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$AmbiguousName.accept(Java.java:4224)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2.visitLvalue(UnitCompiler.java:6494)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22$2.visitLvalue(UnitCompiler.java:6490)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$Lvalue.accept(Java.java:4148)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22.visitRvalue(UnitCompiler.java:6490)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$22.visitRvalue(UnitCompiler.java:6469)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$Rvalue.accept(Java.java:4116)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.getType(UnitCompiler.java:6469)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.findIMethod(UnitCompiler.java:9026)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:5062)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$9100(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$16.visitMethodInvocation(UnitCompiler.java:4423)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$16.visitMethodInvocation(UnitCompiler.java:4396)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:5073)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:4396)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.compileGetValue(UnitCompiler.java:5662)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:3783)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$5900(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$13.visitMethodInvocation(UnitCompiler.java:3762)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$13.visitMethodInvocation(UnitCompiler.java:3734)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:5073)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:3734)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:2360)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$1800(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$6.visitExpressionStatement(UnitCompiler.java:1494)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$6.visitExpressionStatement(UnitCompiler.java:1487)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.Java$ExpressionStatement.accept(Java.java:2874)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:1487)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1567)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:3388)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:1357)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:1330)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:822)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:432)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:215)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration(UnitCompiler.java:411)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration(UnitCompiler.java:406)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java:1414)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:406)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:378)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.SimpleCompiler.cook(SimpleCompiler.java:237)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.codehaus.janino.SimpleCompiler.compileToClassLoader(SimpleCompiler.java:465)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.SimpleCompiler.cook(SimpleCompiler.java:216)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.janino.SimpleCompiler.cook(SimpleCompiler.java:207)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.commons.compiler.Cookable.cook(Cookable.java:80)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at org.codehaus.commons.compiler.Cookable.cook(Cookable.java:75)
> ~[flink-table_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.CompileUtils.doCompile(CompileUtils.java:86)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.CompileUtils.lambda$compile$1(CompileUtils.java:74)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4742)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache.get(LocalCache.java:3937)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.shaded.guava18.com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4739)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.runtime.generated.CompileUtils.compile(CompileUtils.java:74)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> ... 77 more
> 2021-11-04 11:51:51,230 DEBUG
> org.apache.flink.table.runtime.generated.CompileUtils [] - Compiling:
> PartitionPruner$23
> Code:
> public class PartitionPruner$23
> extends org.apache.flink.api.common.functions.RichMapFunction {
> private transient
> org.apache.flink.table.runtime.typeutils.StringDataSerializer
> typeSerializer$7;
>
> private final org.apache.flink.table.data.binary.BinaryStringData
> str$9 =
> org.apache.flink.table.data.binary.BinaryStringData.fromString("20210927");
>
>
> private final org.apache.flink.table.data.binary.BinaryStringData
> str$12 =
> org.apache.flink.table.data.binary.BinaryStringData.fromString("product_series");
>
> private transient
> org.apache.flink.table.functions.hive.HiveGenericUDF
> function_org$apache$flink$table$functions$hive$HiveGenericUDF$00ff86955cfcc960a686ea8c68f6af97;
> private transient
> org.apache.flink.table.data.conversion.StringStringConverter converter$15;
> private transient
> org.apache.flink.table.data.conversion.StringStringConverter converter$16;
>
> private final org.apache.flink.table.data.binary.BinaryStringData
> str$19 = org.apache.flink.table.data.binary.BinaryStringData.fromString("KS");
> public PartitionPruner$23(Object[] references) throws Exception {
> typeSerializer$7 =
> (((org.apache.flink.table.runtime.typeutils.StringDataSerializer)
> references[0]));
>
> function_org$apache$flink$table$functions$hive$HiveGenericUDF$00ff86955cfcc960a686ea8c68f6af97
> = (((org.apache.flink.table.functions.hive.HiveGenericUDF) references[1]));
> converter$15 =
> (((org.apache.flink.table.data.conversion.StringStringConverter)
> references[2]));
> converter$16 =
> (((org.apache.flink.table.data.conversion.StringStringConverter)
> references[3]));
> }
> @Override
> public void open(org.apache.flink.configuration.Configuration
> parameters) throws Exception {
> function_org$apache$flink$table$functions$hive$HiveGenericUDF$00ff86955cfcc960a686ea8c68f6af97.open(new
> org.apache.flink.table.functions.ConstantFunctionContext(parameters));
> converter$15.open(this.getClass().getClassLoader());
> converter$16.open(this.getClass().getClassLoader());
> }
> @Override
> public Object map(Object _in1) throws Exception {
> java.util.Map<String, Object> functionResultCache = new
> java.util.HashMap<String, Object>();
> org.apache.flink.table.data.RowData in1 =
> (org.apache.flink.table.data.RowData) _in1;
>
> org.apache.flink.table.data.binary.BinaryStringData field$6;
> boolean isNull$6;
> org.apache.flink.table.data.binary.BinaryStringData field$8;
> boolean isNull$10;
> boolean result$11;
> org.apache.flink.table.data.binary.BinaryStringData field$13;
> boolean isNull$13;
> org.apache.flink.table.data.binary.BinaryStringData field$14;
> java.lang.String externalResult$17;
> org.apache.flink.table.data.binary.BinaryStringData result$18;
> boolean isNull$18;
> boolean isNull$20;
> boolean result$21;
>
> isNull$6 = in1.isNullAt(0);
> field$6 =
> org.apache.flink.table.data.binary.BinaryStringData.EMPTY_UTF8;
> if (!isNull$6) {
> field$6 = ((org.apache.flink.table.data.binary.BinaryStringData)
> in1.getString(0));
> }
> field$8 = field$6;
> if (!isNull$6) {
> field$8 = (org.apache.flink.table.data.binary.BinaryStringData)
> (typeSerializer$7.copy(field$8));
> }
> isNull$13 = in1.isNullAt(1);
> field$13 =
> org.apache.flink.table.data.binary.BinaryStringData.EMPTY_UTF8;
> if (!isNull$13) {
> field$13 = ((org.apache.flink.table.data.binary.BinaryStringData)
> in1.getString(1));
> }
> field$14 = field$13;
> if (!isNull$13) {
> field$14 = (org.apache.flink.table.data.binary.BinaryStringData)
> (typeSerializer$7.copy(field$14));
> }
> isNull$10 = isNull$6 || false;
> result$11 = false;
> if (!isNull$10) {
> result$11 =
> field$8.equals(((org.apache.flink.table.data.binary.BinaryStringData) str$9));
> }
> boolean result$22 = false;
> boolean isNull$22 = false;
> if (!isNull$10 && !result$11) {
> // left expr is false, skip right expr
> } else {
> externalResult$17 = (java.lang.String)
> function_org$apache$flink$table$functions$hive$HiveGenericUDF$00ff86955cfcc960a686ea8c68f6af97
> .eval(false ? null : ((java.lang.String)
> converter$15.toExternal((org.apache.flink.table.data.binary.BinaryStringData)
> ((org.apache.flink.table.data.binary.BinaryStringData) str$12))), isNull$6 ?
> null : ((java.lang.String)
> converter$16.toExternal((org.apache.flink.table.data.binary.BinaryStringData)
> field$8)), isNull$13 ? null : ((java.lang.String)
> converter$16.toExternal((org.apache.flink.table.data.binary.BinaryStringData)
> field$14)));
> isNull$18 = externalResult$17 == null;
> result$18 =
> org.apache.flink.table.data.binary.BinaryStringData.EMPTY_UTF8;
> if (!isNull$18) {
> result$18 = (org.apache.flink.table.data.binary.BinaryStringData)
> converter$16.toInternalOrNull((java.lang.String) externalResult$17);
> }
> isNull$20 = isNull$18 || false;
> result$21 = false;
> if (!isNull$20) {
> result$21 =
> result$18.equals(((org.apache.flink.table.data.binary.BinaryStringData)
> str$19));
> }
> if (!isNull$10 && !isNull$20) {
> result$22 = result$11 && result$21;
> isNull$22 = false;
> }
> else if (!isNull$10 && result$11 && isNull$20) {
> result$22 = false;
> isNull$22 = true;
> }
> else if (!isNull$10 && !result$11 && isNull$20) {
> result$22 = false;
> isNull$22 = false;
> }
> else if (isNull$10 && !isNull$20 && result$21) {
> result$22 = false;
> isNull$22 = true;
> }
> else if (isNull$10 && !isNull$20 && !result$21) {
> result$22 = false;
> isNull$22 = false;
> }
> else {
> result$22 = false;
> isNull$22 = true;
> }
> }
> return result$22;
> }
> @Override
> public void close() throws Exception {
> function_org$apache$flink$table$functions$hive$HiveGenericUDF$00ff86955cfcc960a686ea8c68f6af97.close();
>
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)