Uploaded image for project: 'Kogito'
  1. Kogito
  2. KOGITO-1262

Unclear error message when using oopath + units

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 0.8.1
    • None
    • Core Engine
    • None
    • 1
    • 2020 Week 10-12 (from Mar 2)

      reproducer at https://github.com/evacchi/sample-kogito/tree/oopath-error-message

      $ mvn clean compile quarkus:dev

      steps to reproduce

      • create java file `org.acme.kogito.model.PersonRules` notice model subpackage
      • add DataStore<Person> person
      • create drl in package `org.acme.kogito` unit `PersonRules`
      • create rule that uses person as oopath

      error message is unclear

      [INFO] --- quarkus-maven-plugin:1.2.0.Final:dev (default-cli) @ sample-kogito ---
      Listening for transport dt_socket at address: 5005
      13:44:17,942 INFO  [org.jbo.threads] JBoss Threads version 3.0.0.Final
      13:44:19,174 ERROR [io.qua.dev.DevModeMain] Failed to start Quarkus: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
      	[error]: Build step io.quarkus.kogito.deployment.KogitoAssetsProcessor#generateModel threw an exception: java.lang.IllegalArgumentException: Unknown declaration: person
      	at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.normalizeOOPathPattern(PatternVisitor.java:90)
      	at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.visit(PatternVisitor.java:57)
      	at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:128)
      	at org.drools.compiler.lang.descr.PatternDescr.accept(PatternDescr.java:272)
      	at org.drools.modelcompiler.builder.generator.visitor.AndVisitor.visit(AndVisitor.java:33)
      	at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:69)
      	at org.drools.modelcompiler.builder.generator.ModelGenerator.processRule(ModelGenerator.java:177)
      	at org.drools.modelcompiler.builder.generator.ModelGenerator.generateModel(ModelGenerator.java:156)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.compileKnowledgePackages(ModelBuilderImpl.java:174)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.buildRules(ModelBuilderImpl.java:118)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.buildPackages(ModelBuilderImpl.java:74)
      	at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105)
      	at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:97)
      	at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:183)
      	at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:67)
      	at org.kie.kogito.codegen.ApplicationGenerator.lambda$generateComponents$7(ApplicationGenerator.java:215)
      	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
      	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654)
      	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
      	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
      	at org.kie.kogito.codegen.ApplicationGenerator.generateComponents(ApplicationGenerator.java:216)
      	at org.kie.kogito.codegen.ApplicationGenerator.generate(ApplicationGenerator.java:200)
      	at io.quarkus.kogito.deployment.KogitoAssetsProcessor.generateModel(KogitoAssetsProcessor.java:166)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      	at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915)
      	at io.quarkus.builder.BuildContext.run(BuildContext.java:279)
      	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426)
      	at java.base/java.lang.Thread.run(Thread.java:834)
      	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
      
      	at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:181)
      	at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:178)
      	at io.quarkus.dev.DevModeMain.start(DevModeMain.java:96)
      	at io.quarkus.dev.DevModeMain.main(DevModeMain.java:67)
      Caused by: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
      	[error]: Build step io.quarkus.kogito.deployment.KogitoAssetsProcessor#generateModel threw an exception: java.lang.IllegalArgumentException: Unknown declaration: person
      	at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.normalizeOOPathPattern(PatternVisitor.java:90)
      	at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.visit(PatternVisitor.java:57)
      	at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:128)
      	at org.drools.compiler.lang.descr.PatternDescr.accept(PatternDescr.java:272)
      	at org.drools.modelcompiler.builder.generator.visitor.AndVisitor.visit(AndVisitor.java:33)
      	at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:69)
      	at org.drools.modelcompiler.builder.generator.ModelGenerator.processRule(ModelGenerator.java:177)
      	at org.drools.modelcompiler.builder.generator.ModelGenerator.generateModel(ModelGenerator.java:156)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.compileKnowledgePackages(ModelBuilderImpl.java:174)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.buildRules(ModelBuilderImpl.java:118)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.buildPackages(ModelBuilderImpl.java:74)
      	at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105)
      	at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:97)
      	at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:183)
      	at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:67)
      	at org.kie.kogito.codegen.ApplicationGenerator.lambda$generateComponents$7(ApplicationGenerator.java:215)
      	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
      	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654)
      	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
      	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
      	at org.kie.kogito.codegen.ApplicationGenerator.generateComponents(ApplicationGenerator.java:216)
      	at org.kie.kogito.codegen.ApplicationGenerator.generate(ApplicationGenerator.java:200)
      	at io.quarkus.kogito.deployment.KogitoAssetsProcessor.generateModel(KogitoAssetsProcessor.java:166)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      	at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915)
      	at io.quarkus.builder.BuildContext.run(BuildContext.java:279)
      	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426)
      	at java.base/java.lang.Thread.run(Thread.java:834)
      	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
      
      	at io.quarkus.builder.Execution.run(Execution.java:108)
      	at io.quarkus.builder.BuildExecutionBuilder.execute(BuildExecutionBuilder.java:79)
      	at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:128)
      	at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:114)
      	... 3 more
      Caused by: java.lang.IllegalArgumentException: Unknown declaration: person
      	at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.normalizeOOPathPattern(PatternVisitor.java:90)
      	at org.drools.modelcompiler.builder.generator.visitor.pattern.PatternVisitor.visit(PatternVisitor.java:57)
      	at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:128)
      	at org.drools.compiler.lang.descr.PatternDescr.accept(PatternDescr.java:272)
      	at org.drools.modelcompiler.builder.generator.visitor.AndVisitor.visit(AndVisitor.java:33)
      	at org.drools.modelcompiler.builder.generator.visitor.ModelGeneratorVisitor.visit(ModelGeneratorVisitor.java:69)
      	at org.drools.modelcompiler.builder.generator.ModelGenerator.processRule(ModelGenerator.java:177)
      	at org.drools.modelcompiler.builder.generator.ModelGenerator.generateModel(ModelGenerator.java:156)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.compileKnowledgePackages(ModelBuilderImpl.java:174)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.buildRules(ModelBuilderImpl.java:118)
      	at org.drools.modelcompiler.builder.ModelBuilderImpl.buildPackages(ModelBuilderImpl.java:74)
      	at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105)
      	at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:97)
      	at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:183)
      	at org.kie.kogito.codegen.rules.IncrementalRuleCodegen.generate(IncrementalRuleCodegen.java:67)
      	at org.kie.kogito.codegen.ApplicationGenerator.lambda$generateComponents$7(ApplicationGenerator.java:215)
      	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
      	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654)
      	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
      	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
      	at org.kie.kogito.codegen.ApplicationGenerator.generateComponents(ApplicationGenerator.java:216)
      	at org.kie.kogito.codegen.ApplicationGenerator.generate(ApplicationGenerator.java:200)
      	at io.quarkus.kogito.deployment.KogitoAssetsProcessor.generateModel(KogitoAssetsProcessor.java:166)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      	at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:915)
      	at io.quarkus.builder.BuildContext.run(BuildContext.java:279)
      	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2011)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1535)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1426)
      	at java.base/java.lang.Thread.run(Thread.java:834)
      	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
      
      13:44:19,178 INFO  [io.qua.dev.DevModeMain] Attempting to start hot replacement endpoint to recover from previous Quarkus startup failure
      13:44:19,192 ERROR [io.qua.dev.DevModeMain] Failed to start quarkus: java.lang.IllegalArgumentException: workerPoolSize must be > 0
      	at io.vertx.core.VertxOptions.setWorkerPoolSize(VertxOptions.java:275)
      	at io.quarkus.vertx.core.runtime.VertxCoreRecorder.convertToVertxOptions(VertxCoreRecorder.java:152)
      	at io.quarkus.vertx.core.runtime.VertxCoreRecorder.initializeWeb(VertxCoreRecorder.java:105)
      	at io.quarkus.vertx.http.runtime.VertxHttpRecorder.startServerAfterFailedStart(VertxHttpRecorder.java:119)
      	at io.quarkus.vertx.http.deployment.devmode.VertxHotReplacementSetup.handleFailedInitialStart(VertxHotReplacementSetup.java:30)
      	at io.quarkus.dev.RuntimeUpdatesProcessor.startupFailed(RuntimeUpdatesProcessor.java:452)
      	at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:192)
      	at io.quarkus.dev.DevModeMain.start(DevModeMain.java:96)
      	at io.quarkus.dev.DevModeMain.main(DevModeMain.java:67)
      
      
      
      

              evacchi Edoardo Vacchi (Inactive)
              evacchi Edoardo Vacchi (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: