flink-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jingsong Li <jingsongl...@gmail.com>
Subject Re: The main method caused an error: Unable to instantiate java compiler in Flink 1.10
Date Fri, 28 Feb 2020 06:31:23 GMT
Hi kant,

As Jark said,
Your user jar should not contains "
org.codehaus.commons.compiler.ICompilerFactory" dependencies. This will
make calcite can not work.

In 1.10, have made Flink client respect classloading policy that default
policy is child first [1]. More details can find in [2].

[1]
https://ci.apache.org/projects/flink/flink-docs-release-1.10/release-notes/flink-1.10.html#flink-client-respects-classloading-policy-flink-13749
[2] https://issues.apache.org/jira/browse/FLINK-13749

Best,
Jingsong Lee

On Fri, Feb 28, 2020 at 11:19 AM Jark Wu <imjark@gmail.com> wrote:

> Hi Kant,
>
> Are you depending a custom janino or something like hive-exec in your
> pom.xml?
>
> Best,
> Jark
>
> On Fri, 28 Feb 2020 at 10:13, kant kodali <kanth909@gmail.com> wrote:
>
>> It works within IDE but not when I submit using command using flink run
>> myApp.jar
>>
>>
>>
>> On Thu, Feb 27, 2020 at 3:32 PM kant kodali <kanth909@gmail.com> wrote:
>>
>>> Below is the sample code using Flink 1.10
>>>
>>> public class Test {
>>>
>>>     public static void main(String... args) throws Exception {
>>>
>>>         EnvironmentSettings bsSettings = EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build();
>>>         final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
>>>         env.setStateBackend((StateBackend) new RocksDBStateBackend("file:///tmp"));
>>>
>>>
>>>         StreamTableEnvironment bsTableEnv = StreamTableEnvironment.create(env,
bsSettings);
>>>
>>>         Properties properties = new Properties();
>>>         properties.setProperty("bootstrap.servers", "localhost:9092");
>>>         properties.setProperty("group.id", "test");
>>>
>>>         FlinkKafkaConsumer<String> consumer1 = new FlinkKafkaConsumer<>(
>>>                 java.util.regex.Pattern.compile("test-topic1"),
>>>                 new SimpleStringSchema(),
>>>                 properties);
>>>
>>>         FlinkKafkaConsumer<String> consumer2 = new FlinkKafkaConsumer<>(
>>>                 java.util.regex.Pattern.compile("test-topic2"),
>>>                 new SimpleStringSchema(),
>>>                 properties);
>>>
>>>         DataStream<String> stream1 = env.addSource(consumer1);
>>>         DataStream<String> stream2 = env.addSource(consumer2);
>>>
>>>         bsTableEnv.createTemporaryView("sample1", stream1);
>>>         bsTableEnv.createTemporaryView("sample2", stream2);
>>>
>>>         Table result = bsTableEnv.sqlQuery("SELECT * FROM sample1 INNER JOIN
sample2 on sample1.f0=sample2.f0");
>>>         result.printSchema();
>>>
>>>
>>>         bsTableEnv.toRetractStream(result, Row.class).print();
>>>         bsTableEnv.execute("sample job");
>>>     }
>>> }
>>>
>>>
>>> On Thu, Feb 27, 2020 at 3:22 PM kant kodali <kanth909@gmail.com> wrote:
>>>
>>>> Fixed the typo.
>>>>
>>>>
>>>> Hi All,
>>>>
>>>>
>>>> My sample program works in Flink 1.9 but in 1.10 I get the following
>>>> error when I am submitting the job. otherwords it fails to submit a job.
>>>> any idea?
>>>>
>>>>
>>>> Thanks!
>>>>
>>>> On Thu, Feb 27, 2020 at 2:19 PM kant kodali <kanth909@gmail.com> wrote:
>>>>
>>>>> Hi All,
>>>>>
>>>>>
>>>>> My sample program works in Flink 1.9 but in 1.0 I get the following
>>>>> error when I am submitting the job. otherwords it fails to submit a job.
>>>>> any idea?
>>>>>
>>>>>
>>>>> Thanks!
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> org.apache.flink.client.program.ProgramInvocationException: The main
>>>>> method caused an error: Unable to instantiate java compiler
>>>>>
>>>>> at
>>>>> org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:335)
>>>>>
>>>>> at
>>>>> org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:205)
>>>>>
>>>>> at
>>>>> org.apache.flink.client.ClientUtils.executeProgram(ClientUtils.java:138)
>>>>>
>>>>> at
>>>>> org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:664)
>>>>>
>>>>> at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:213)
>>>>>
>>>>> at
>>>>> org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:895)
>>>>>
>>>>> at
>>>>> org.apache.flink.client.cli.CliFrontend.lambda$main$10(CliFrontend.java:968)
>>>>>
>>>>> at
>>>>> org.apache.flink.runtime.security.NoOpSecurityContext.runSecured(NoOpSecurityContext.java:30)
>>>>>
>>>>> at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:968)
>>>>>
>>>>> Caused by: java.lang.IllegalStateException: Unable to instantiate java
>>>>> compiler
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.compile(JaninoRelMetadataProvider.java:434)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.load3(JaninoRelMetadataProvider.java:375)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.lambda$static$0(JaninoRelMetadataProvider.java:109)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.CacheLoader$FunctionToCacheLoader.load(CacheLoader.java:149)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache.get(LocalCache.java:3953)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3957)
>>>>>
>>>>> at
>>>>> org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4875)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.create(JaninoRelMetadataProvider.java:475)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.revise(JaninoRelMetadataProvider.java:488)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.RelMetadataQuery.revise(RelMetadataQuery.java:193)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.RelMetadataQuery.getPulledUpPredicates(RelMetadataQuery.java:797)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.rules.ReduceExpressionsRule$ProjectReduceExpressionsRule.onMatch(ReduceExpressionsRule.java:298)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.AbstractRelOptPlanner.fireRule(AbstractRelOptPlanner.java:319)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.hep.HepPlanner.applyRule(HepPlanner.java:560)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.hep.HepPlanner.applyRules(HepPlanner.java:419)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.hep.HepPlanner.executeInstruction(HepPlanner.java:256)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.hep.HepInstruction$RuleInstance.execute(HepInstruction.java:127)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.hep.HepPlanner.executeProgram(HepPlanner.java:215)
>>>>>
>>>>> at
>>>>> org.apache.calcite.plan.hep.HepPlanner.findBestExp(HepPlanner.java:202)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.program.FlinkHepProgram.optimize(FlinkHepProgram.scala:69)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.program.FlinkHepRuleSetProgram.optimize(FlinkHepRuleSetProgram.scala:87)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram$$anonfun$optimize$1.apply(FlinkChainedProgram.scala:62)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram$$anonfun$optimize$1.apply(FlinkChainedProgram.scala:58)
>>>>>
>>>>> at
>>>>> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
>>>>>
>>>>> at
>>>>> scala.collection.TraversableOnce$$anonfun$foldLeft$1.apply(TraversableOnce.scala:157)
>>>>>
>>>>> at scala.collection.Iterator$class.foreach(Iterator.scala:891)
>>>>>
>>>>> at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
>>>>>
>>>>> at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
>>>>>
>>>>> at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
>>>>>
>>>>> at
>>>>> scala.collection.TraversableOnce$class.foldLeft(TraversableOnce.scala:157)
>>>>>
>>>>> at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram.optimize(FlinkChainedProgram.scala:57)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.optimizeTree(StreamCommonSubGraphBasedOptimizer.scala:170)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.doOptimize(StreamCommonSubGraphBasedOptimizer.scala:90)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.plan.optimize.CommonSubGraphBasedOptimizer.optimize(CommonSubGraphBasedOptimizer.scala:77)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.delegation.PlannerBase.optimize(PlannerBase.scala:248)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:151)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.api.java.internal.StreamTableEnvironmentImpl.toDataStream(StreamTableEnvironmentImpl.java:351)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.api.java.internal.StreamTableEnvironmentImpl.toRetractStream(StreamTableEnvironmentImpl.java:296)
>>>>>
>>>>> at
>>>>> org.apache.flink.table.api.java.internal.StreamTableEnvironmentImpl.toRetractStream(StreamTableEnvironmentImpl.java:287)
>>>>>
>>>>> at Reconciliation.main(Reconciliation.java:52)
>>>>>
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>
>>>>> at
>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>>>
>>>>> at
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>>
>>>>> at java.lang.reflect.Method.invoke(Method.java:498)
>>>>>
>>>>> at
>>>>> org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:321)
>>>>>
>>>>> ... 8 more
>>>>>
>>>>> Caused by: java.lang.ClassCastException:
>>>>> org.codehaus.janino.CompilerFactory cannot be cast to
>>>>> org.codehaus.commons.compiler.ICompilerFactory
>>>>>
>>>>> at
>>>>> org.codehaus.commons.compiler.CompilerFactoryFactory.getCompilerFactory(CompilerFactoryFactory.java:129)
>>>>>
>>>>> at
>>>>> org.codehaus.commons.compiler.CompilerFactoryFactory.getDefaultCompilerFactory(CompilerFactoryFactory.java:79)
>>>>>
>>>>> at
>>>>> org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.compile(JaninoRelMetadataProvider.java:432)
>>>>>
>>>>> ... 57 more
>>>>>
>>>>

-- 
Best, Jingsong Lee

Mime
View raw message