Hi Julian, I exclude that because in that branch I have got the two mentioned in the JIRA ticket (+ ~28 new tests) passing, and this one failing.
Also the exception is different, in the ticket it was an assertion on the plan/resultset failing, while in this new case it is the code compilation module. I think I should open file a JIRA ticket if you agree. On 14 February 2018 at 20:27, Julian Hyde <jh...@apache.org> wrote: > https://issues.apache.org/jira/browse/CALCITE-2075 < > https://issues.apache.org/jira/browse/CALCITE-2075> was recently fixed. > Is this a duplicate? > > > > On Feb 13, 2018, at 1:29 PM, Alessandro Solimando < > alessandro.solima...@gmail.com> wrote: > > > > Hello, > > the exception in the object is raised when the following query is issued > to > > Calcite: > > > > *select x* > > > > > >> > >> > >> > >> > >> *from (values (1, 'a'), (2, 'b')) as t(x, y)where x > 1 unionselect > xfrom > >> (values (1, 'a'), (2, 'b'), (1, 'b'), (2, 'c'), (2, 'c')) as t(x, > y)where x > >>> 1* > > > > > > I found several issues involving code compilation but none of them seemed > > relevant for this case. > > > > The query looks fine to me, can you please check whether this it is an > > issue? > > > > You can check it here by launching *testUnionWithFiltersProject() > *method in > > *SparkAdapterTest.java*: > > https://github.com/asolimando/calcite/tree/SPARK-TESTS > > > > Full stack trace below: > > > > java.lang.RuntimeException: With materializationsEnabled=false, limit=0 > > at org.apache.calcite.test.CalciteAssert.assertQuery( > CalciteAssert.java:600) > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery. > returns(CalciteAssert.java:1346) > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery. > returns(CalciteAssert.java:1329) > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery.returnsUnordered( > CalciteAssert.java:1357) > > at > > org.apache.calcite.test.SparkAdapterTest.commonTester( > SparkAdapterTest.java:93) > > at > > org.apache.calcite.test.SparkAdapterTest.testUnionWithFiltersProject( > SparkAdapterTest.java:651) > > 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.junit.runners.model.FrameworkMethod$1.runReflectiveCall( > FrameworkMethod.java:50) > > at > > org.junit.internal.runners.model.ReflectiveCallable.run( > ReflectiveCallable.java:12) > > at > > org.junit.runners.model.FrameworkMethod.invokeExplosively( > FrameworkMethod.java:47) > > at > > org.junit.internal.runners.statements.InvokeMethod. > evaluate(InvokeMethod.java:17) > > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) > > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild( > BlockJUnit4ClassRunner.java:78) > > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild( > BlockJUnit4ClassRunner.java:57) > > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) > > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) > > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) > > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) > > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) > > at org.junit.runners.ParentRunner.run(ParentRunner.java:363) > > at org.junit.runner.JUnitCore.run(JUnitCore.java:137) > > at > > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs( > JUnit4IdeaTestRunner.java:68) > > at > > com.intellij.rt.execution.junit.IdeaTestRunner$Repeater. > startRunnerWithArgs(IdeaTestRunner.java:47) > > at > > com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart( > JUnitStarter.java:242) > > at com.intellij.rt.execution.junit.JUnitStarter.main( > JUnitStarter.java:70) > > Caused by: java.sql.SQLException: Error while executing SQL "select x > > from (values (1, 'a'), (2, 'b')) as t(x, y) > > where x > 1 > > union > > select x > > from (values (1, 'a'), (2, 'b'), (1, 'b'), (2, 'c'), (2, 'c')) as t(x, y) > > where x > 1 > > ": Error while compiling generated Java code: > > public static class Record2_0 implements java.io.Serializable { > > public int X; > > public String Y; > > public Record2_0() {} > > public boolean equals(Object o) { > > if (this == o) { > > return true; > > } > > if (!(o instanceof Record2_0)) { > > return false; > > } > > return this.X == ((Record2_0) o).X && java.util.Objects.equals(this. > Y, > > ((Record2_0) o).Y); > > } > > public int hashCode() { > > int h = 0; > > h = org.apache.calcite.runtime.Utilities.hash(h, this.X); > > h = org.apache.calcite.runtime.Utilities.hash(h, this.Y); > > return h; > > } > > public int compareTo(Record2_0 that) { > > int c; > > c = org.apache.calcite.runtime.Utilities.compare(this.X, that.X); > > if (c != 0) { > > return c; > > } > > c = org.apache.calcite.runtime.Utilities.compare(this.Y, that.Y); > > if (c != 0) { > > return c; > > } > > return 0; > > } > > public String toString() { > > return "{X=" + this.X + ", Y=" + this.Y + "}"; > > } > > } > > org.apache.calcite.DataContext root; > > public org.apache.calcite.linq4j.Enumerable bind(final > > org.apache.calcite.DataContext root0) { > > root = root0; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Object[] { > > new Object[] { > > 1, > > "a"}, > > new Object[] { > > 2, > > "b"}}); > > final org.apache.calcite.linq4j.AbstractEnumerable child0 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (org.apache.calcite.runtime. > SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]) > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return > > org.apache.calcite.runtime.SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]); > > } > > }; > > } > > }; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable0 = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Record2_0[] { > > new Record2_0( > > 1, > > "a"), > > new Record2_0( > > 2, > > "b"), > > new Record2_0( > > 1, > > "b"), > > new Record2_0( > > 2, > > "c"), > > new Record2_0( > > 2, > > "c")}); > > final org.apache.calcite.linq4j.AbstractEnumerable child1 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable0.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (((Record2_0) inputEnumerator.current()).X > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return ((Record2_0) inputEnumerator.current()).X; > > } > > }; > > } > > }; > > return child0.union(child1); > > } > > > > public Class getElementType() { > > return int.class; > > } > > > > > > at org.apache.calcite.avatica.Helper.createException(Helper.java:56) > > at org.apache.calcite.avatica.Helper.createException(Helper.java:41) > > at > > org.apache.calcite.avatica.AvaticaStatement.executeInternal( > AvaticaStatement.java:156) > > at > > org.apache.calcite.avatica.AvaticaStatement.executeQuery( > AvaticaStatement.java:218) > > at org.apache.calcite.test.CalciteAssert.assertQuery( > CalciteAssert.java:568) > > ... 27 more > > Caused by: java.lang.RuntimeException: Error while compiling generated > Java > > code: > > public static class Record2_0 implements java.io.Serializable { > > public int X; > > public String Y; > > public Record2_0() {} > > public boolean equals(Object o) { > > if (this == o) { > > return true; > > } > > if (!(o instanceof Record2_0)) { > > return false; > > } > > return this.X == ((Record2_0) o).X && java.util.Objects.equals(this. > Y, > > ((Record2_0) o).Y); > > } > > public int hashCode() { > > int h = 0; > > h = org.apache.calcite.runtime.Utilities.hash(h, this.X); > > h = org.apache.calcite.runtime.Utilities.hash(h, this.Y); > > return h; > > } > > public int compareTo(Record2_0 that) { > > int c; > > c = org.apache.calcite.runtime.Utilities.compare(this.X, that.X); > > if (c != 0) { > > return c; > > } > > c = org.apache.calcite.runtime.Utilities.compare(this.Y, that.Y); > > if (c != 0) { > > return c; > > } > > return 0; > > } > > public String toString() { > > return "{X=" + this.X + ", Y=" + this.Y + "}"; > > } > > } > > org.apache.calcite.DataContext root; > > public org.apache.calcite.linq4j.Enumerable bind(final > > org.apache.calcite.DataContext root0) { > > root = root0; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Object[] { > > new Object[] { > > 1, > > "a"}, > > new Object[] { > > 2, > > "b"}}); > > final org.apache.calcite.linq4j.AbstractEnumerable child0 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (org.apache.calcite.runtime. > SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]) > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return > > org.apache.calcite.runtime.SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]); > > } > > }; > > } > > }; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable0 = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Record2_0[] { > > new Record2_0( > > 1, > > "a"), > > new Record2_0( > > 2, > > "b"), > > new Record2_0( > > 1, > > "b"), > > new Record2_0( > > 2, > > "c"), > > new Record2_0( > > 2, > > "c")}); > > final org.apache.calcite.linq4j.AbstractEnumerable child1 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable0.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (((Record2_0) inputEnumerator.current()).X > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return ((Record2_0) inputEnumerator.current()).X; > > } > > }; > > } > > }; > > return child0.union(child1); > > } > > > > public Class getElementType() { > > return int.class; > > } > > > > > > at org.apache.calcite.avatica.Helper.wrap(Helper.java:37) > > at > > org.apache.calcite.adapter.enumerable.EnumerableInterpretable. > toBindable(EnumerableInterpretable.java:108) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt. > implement(CalcitePrepareImpl.java:1254) > > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:331) > > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:230) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl.prepare2_( > CalcitePrepareImpl.java:781) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl.prepare_( > CalcitePrepareImpl.java:640) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl.prepareSql( > CalcitePrepareImpl.java:610) > > at > > org.apache.calcite.jdbc.CalciteConnectionImpl.parseQuery( > CalciteConnectionImpl.java:221) > > at > > org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute( > CalciteMetaImpl.java:603) > > at > > org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal( > AvaticaConnection.java:638) > > at > > org.apache.calcite.avatica.AvaticaStatement.executeInternal( > AvaticaStatement.java:149) > > ... 29 more > > Caused by: java.lang.RuntimeException: while compiling > CalciteProgram211242 > > at > > org.apache.calcite.util.javac.JaninoCompiler.compile( > JaninoCompiler.java:83) > > at > > org.apache.calcite.adapter.spark.SparkHandlerImpl. > compile(SparkHandlerImpl.java:128) > > at > > org.apache.calcite.adapter.enumerable.EnumerableInterpretable. > toBindable(EnumerableInterpretable.java:103) > > ... 39 more > > Caused by: java.lang.ClassNotFoundException: File > > 'CalciteProgram211242.java', Line 84, Column 8: No applicable > > constructor/method found for actual parameters "int, java.lang.String"; > > candidates are: "CalciteProgram211242$Record2_0()" > > at > > org.codehaus.janino.JavaSourceClassLoader.generateBytecodes( > JavaSourceClassLoader.java:226) > > at > > org.apache.calcite.util.javac.JaninoCompiler$AccountingClassLoader. > generateBytecodes(JaninoCompiler.java:160) > > at > > org.codehaus.janino.JavaSourceClassLoader.findClass( > JavaSourceClassLoader.java:178) > > at java.lang.ClassLoader.loadClass(ClassLoader.java:424) > > at java.lang.ClassLoader.loadClass(ClassLoader.java:357) > > at > > org.apache.calcite.util.javac.JaninoCompiler.compile( > JaninoCompiler.java:81) > > ... 41 more > > Caused by: org.codehaus.commons.compiler.CompileException: File > > 'CalciteProgram211242.java', Line 84, Column 8: No applicable > > constructor/method found for actual parameters "int, java.lang.String"; > > candidates are: "CalciteProgram211242$Record2_0()" > > at org.codehaus.janino.UnitCompiler.compileError( > UnitCompiler.java:10092) > > at > > org.codehaus.janino.UnitCompiler.findMostSpecificIInvocable( > UnitCompiler.java:7506) > > at > > org.codehaus.janino.UnitCompiler.invokeConstructor( > UnitCompiler.java:6452) > > at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:4103) > > at org.codehaus.janino.UnitCompiler.access$7600(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$10.visitNewClassInstance( > UnitCompiler.java:3263) > > at org.codehaus.janino.Java$NewClassInstance.accept(Java.java:4085) > > at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3278) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4345) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4303) > > at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:4279) > > at org.codehaus.janino.UnitCompiler.access$7500(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$10.visitNewInitializedArray( > UnitCompiler.java:3262) > > at org.codehaus.janino.Java$NewInitializedArray.accept(Java.java:4263) > > at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3278) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4345) > > at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:3952) > > at org.codehaus.janino.UnitCompiler.access$6900(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$10.visitMethodInvocation( > UnitCompiler.java:3251) > > at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:3974) > > at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3278) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4345) > > at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1835) > > at org.codehaus.janino.UnitCompiler.access$2000(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$4.visitLocalVariableDeclarationS > tatement(UnitCompiler.java:943) > > at > > org.codehaus.janino.Java$LocalVariableDeclarationStatem > ent.accept(Java.java:2508) > > at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:956) > > at org.codehaus.janino.UnitCompiler.compileStatements( > UnitCompiler.java:997) > > at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2283) > > at > > org.codehaus.janino.UnitCompiler.compileDeclaredMethods( > UnitCompiler.java:820) > > at > > org.codehaus.janino.UnitCompiler.compileDeclaredMethods( > UnitCompiler.java:792) > > at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:505) > > at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:391) > > at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclara > tion(UnitCompiler.java:345) > > at > > org.codehaus.janino.Java$PackageMemberClassDeclaration. > accept(Java.java:1139) > > at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:352) > > at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:320) > > at > > org.codehaus.janino.JavaSourceClassLoader.generateBytecodes( > JavaSourceClassLoader.java:224) > > ... 46 more > > java.lang.RuntimeException: exception while executing [select x > > from (values (1, 'a'), (2, 'b')) as t(x, y) > > where x > 1 > > union > > select x > > from (values (1, 'a'), (2, 'b'), (1, 'b'), (2, 'c'), (2, 'c')) as t(x, y) > > where x > 1 > > ] > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery. > returns(CalciteAssert.java:1351) > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery. > returns(CalciteAssert.java:1329) > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery.returnsUnordered( > CalciteAssert.java:1357) > > at > > org.apache.calcite.test.SparkAdapterTest.commonTester( > SparkAdapterTest.java:93) > > at > > org.apache.calcite.test.SparkAdapterTest.testUnionWithFiltersProject( > SparkAdapterTest.java:651) > > 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.junit.runners.model.FrameworkMethod$1.runReflectiveCall( > FrameworkMethod.java:50) > > at > > org.junit.internal.runners.model.ReflectiveCallable.run( > ReflectiveCallable.java:12) > > at > > org.junit.runners.model.FrameworkMethod.invokeExplosively( > FrameworkMethod.java:47) > > at > > org.junit.internal.runners.statements.InvokeMethod. > evaluate(InvokeMethod.java:17) > > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) > > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild( > BlockJUnit4ClassRunner.java:78) > > at > > org.junit.runners.BlockJUnit4ClassRunner.runChild( > BlockJUnit4ClassRunner.java:57) > > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) > > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) > > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) > > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) > > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) > > at org.junit.runners.ParentRunner.run(ParentRunner.java:363) > > at org.junit.runner.JUnitCore.run(JUnitCore.java:137) > > at > > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs( > JUnit4IdeaTestRunner.java:68) > > at > > com.intellij.rt.execution.junit.IdeaTestRunner$Repeater. > startRunnerWithArgs(IdeaTestRunner.java:47) > > at > > com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart( > JUnitStarter.java:242) > > at com.intellij.rt.execution.junit.JUnitStarter.main( > JUnitStarter.java:70) > > Caused by: java.lang.RuntimeException: With > materializationsEnabled=false, > > limit=0 > > at org.apache.calcite.test.CalciteAssert.assertQuery( > CalciteAssert.java:600) > > at > > org.apache.calcite.test.CalciteAssert$AssertQuery. > returns(CalciteAssert.java:1346) > > ... 26 more > > Caused by: java.sql.SQLException: Error while executing SQL "select x > > from (values (1, 'a'), (2, 'b')) as t(x, y) > > where x > 1 > > union > > select x > > from (values (1, 'a'), (2, 'b'), (1, 'b'), (2, 'c'), (2, 'c')) as t(x, y) > > where x > 1 > > ": Error while compiling generated Java code: > > public static class Record2_0 implements java.io.Serializable { > > public int X; > > public String Y; > > public Record2_0() {} > > public boolean equals(Object o) { > > if (this == o) { > > return true; > > } > > if (!(o instanceof Record2_0)) { > > return false; > > } > > return this.X == ((Record2_0) o).X && java.util.Objects.equals(this. > Y, > > ((Record2_0) o).Y); > > } > > public int hashCode() { > > int h = 0; > > h = org.apache.calcite.runtime.Utilities.hash(h, this.X); > > h = org.apache.calcite.runtime.Utilities.hash(h, this.Y); > > return h; > > } > > public int compareTo(Record2_0 that) { > > int c; > > c = org.apache.calcite.runtime.Utilities.compare(this.X, that.X); > > if (c != 0) { > > return c; > > } > > c = org.apache.calcite.runtime.Utilities.compare(this.Y, that.Y); > > if (c != 0) { > > return c; > > } > > return 0; > > } > > public String toString() { > > return "{X=" + this.X + ", Y=" + this.Y + "}"; > > } > > } > > org.apache.calcite.DataContext root; > > public org.apache.calcite.linq4j.Enumerable bind(final > > org.apache.calcite.DataContext root0) { > > root = root0; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Object[] { > > new Object[] { > > 1, > > "a"}, > > new Object[] { > > 2, > > "b"}}); > > final org.apache.calcite.linq4j.AbstractEnumerable child0 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (org.apache.calcite.runtime. > SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]) > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return > > org.apache.calcite.runtime.SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]); > > } > > }; > > } > > }; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable0 = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Record2_0[] { > > new Record2_0( > > 1, > > "a"), > > new Record2_0( > > 2, > > "b"), > > new Record2_0( > > 1, > > "b"), > > new Record2_0( > > 2, > > "c"), > > new Record2_0( > > 2, > > "c")}); > > final org.apache.calcite.linq4j.AbstractEnumerable child1 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable0.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (((Record2_0) inputEnumerator.current()).X > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return ((Record2_0) inputEnumerator.current()).X; > > } > > }; > > } > > }; > > return child0.union(child1); > > } > > > > public Class getElementType() { > > return int.class; > > } > > > > > > at org.apache.calcite.avatica.Helper.createException(Helper.java:56) > > at org.apache.calcite.avatica.Helper.createException(Helper.java:41) > > at > > org.apache.calcite.avatica.AvaticaStatement.executeInternal( > AvaticaStatement.java:156) > > at > > org.apache.calcite.avatica.AvaticaStatement.executeQuery( > AvaticaStatement.java:218) > > at org.apache.calcite.test.CalciteAssert.assertQuery( > CalciteAssert.java:568) > > ... 27 more > > Caused by: java.lang.RuntimeException: Error while compiling generated > Java > > code: > > public static class Record2_0 implements java.io.Serializable { > > public int X; > > public String Y; > > public Record2_0() {} > > public boolean equals(Object o) { > > if (this == o) { > > return true; > > } > > if (!(o instanceof Record2_0)) { > > return false; > > } > > return this.X == ((Record2_0) o).X && java.util.Objects.equals(this. > Y, > > ((Record2_0) o).Y); > > } > > public int hashCode() { > > int h = 0; > > h = org.apache.calcite.runtime.Utilities.hash(h, this.X); > > h = org.apache.calcite.runtime.Utilities.hash(h, this.Y); > > return h; > > } > > public int compareTo(Record2_0 that) { > > int c; > > c = org.apache.calcite.runtime.Utilities.compare(this.X, that.X); > > if (c != 0) { > > return c; > > } > > c = org.apache.calcite.runtime.Utilities.compare(this.Y, that.Y); > > if (c != 0) { > > return c; > > } > > return 0; > > } > > public String toString() { > > return "{X=" + this.X + ", Y=" + this.Y + "}"; > > } > > } > > org.apache.calcite.DataContext root; > > public org.apache.calcite.linq4j.Enumerable bind(final > > org.apache.calcite.DataContext root0) { > > root = root0; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Object[] { > > new Object[] { > > 1, > > "a"}, > > new Object[] { > > 2, > > "b"}}); > > final org.apache.calcite.linq4j.AbstractEnumerable child0 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (org.apache.calcite.runtime. > SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]) > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return > > org.apache.calcite.runtime.SqlFunctions.toInt(((Object[]) > > inputEnumerator.current())[0]); > > } > > }; > > } > > }; > > final org.apache.calcite.linq4j.Enumerable _inputEnumerable0 = > > org.apache.calcite.linq4j.Linq4j.asEnumerable(new Record2_0[] { > > new Record2_0( > > 1, > > "a"), > > new Record2_0( > > 2, > > "b"), > > new Record2_0( > > 1, > > "b"), > > new Record2_0( > > 2, > > "c"), > > new Record2_0( > > 2, > > "c")}); > > final org.apache.calcite.linq4j.AbstractEnumerable child1 = new > > org.apache.calcite.linq4j.AbstractEnumerable(){ > > public org.apache.calcite.linq4j.Enumerator enumerator() { > > return new org.apache.calcite.linq4j.Enumerator(){ > > public final org.apache.calcite.linq4j.Enumerator > inputEnumerator > > = _inputEnumerable0.enumerator(); > > public void reset() { > > inputEnumerator.reset(); > > } > > public boolean moveNext() { > > while (inputEnumerator.moveNext()) { > > if (((Record2_0) inputEnumerator.current()).X > 1) { > > return true; > > } > > } > > return false; > > } > > public void close() { > > inputEnumerator.close(); > > } > > public Object current() { > > return ((Record2_0) inputEnumerator.current()).X; > > } > > }; > > } > > }; > > return child0.union(child1); > > } > > > > public Class getElementType() { > > return int.class; > > } > > > > > > at org.apache.calcite.avatica.Helper.wrap(Helper.java:37) > > at > > org.apache.calcite.adapter.enumerable.EnumerableInterpretable. > toBindable(EnumerableInterpretable.java:108) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt. > implement(CalcitePrepareImpl.java:1254) > > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:331) > > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:230) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl.prepare2_( > CalcitePrepareImpl.java:781) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl.prepare_( > CalcitePrepareImpl.java:640) > > at > > org.apache.calcite.prepare.CalcitePrepareImpl.prepareSql( > CalcitePrepareImpl.java:610) > > at > > org.apache.calcite.jdbc.CalciteConnectionImpl.parseQuery( > CalciteConnectionImpl.java:221) > > at > > org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute( > CalciteMetaImpl.java:603) > > at > > org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal( > AvaticaConnection.java:638) > > at > > org.apache.calcite.avatica.AvaticaStatement.executeInternal( > AvaticaStatement.java:149) > > ... 29 more > > Caused by: java.lang.RuntimeException: while compiling > CalciteProgram211242 > > at > > org.apache.calcite.util.javac.JaninoCompiler.compile( > JaninoCompiler.java:83) > > at > > org.apache.calcite.adapter.spark.SparkHandlerImpl. > compile(SparkHandlerImpl.java:128) > > at > > org.apache.calcite.adapter.enumerable.EnumerableInterpretable. > toBindable(EnumerableInterpretable.java:103) > > ... 39 more > > Caused by: java.lang.ClassNotFoundException: File > > 'CalciteProgram211242.java', Line 84, Column 8: No applicable > > constructor/method found for actual parameters "int, java.lang.String"; > > candidates are: "CalciteProgram211242$Record2_0()" > > at > > org.codehaus.janino.JavaSourceClassLoader.generateBytecodes( > JavaSourceClassLoader.java:226) > > at > > org.apache.calcite.util.javac.JaninoCompiler$AccountingClassLoader. > generateBytecodes(JaninoCompiler.java:160) > > at > > org.codehaus.janino.JavaSourceClassLoader.findClass( > JavaSourceClassLoader.java:178) > > at java.lang.ClassLoader.loadClass(ClassLoader.java:424) > > at java.lang.ClassLoader.loadClass(ClassLoader.java:357) > > at > > org.apache.calcite.util.javac.JaninoCompiler.compile( > JaninoCompiler.java:81) > > ... 41 more > > Caused by: org.codehaus.commons.compiler.CompileException: File > > 'CalciteProgram211242.java', Line 84, Column 8: No applicable > > constructor/method found for actual parameters "int, java.lang.String"; > > candidates are: "CalciteProgram211242$Record2_0()" > > at org.codehaus.janino.UnitCompiler.compileError( > UnitCompiler.java:10092) > > at > > org.codehaus.janino.UnitCompiler.findMostSpecificIInvocable( > UnitCompiler.java:7506) > > at > > org.codehaus.janino.UnitCompiler.invokeConstructor( > UnitCompiler.java:6452) > > at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:4103) > > at org.codehaus.janino.UnitCompiler.access$7600(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$10.visitNewClassInstance( > UnitCompiler.java:3263) > > at org.codehaus.janino.Java$NewClassInstance.accept(Java.java:4085) > > at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3278) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4345) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4303) > > at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:4279) > > at org.codehaus.janino.UnitCompiler.access$7500(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$10.visitNewInitializedArray( > UnitCompiler.java:3262) > > at org.codehaus.janino.Java$NewInitializedArray.accept(Java.java:4263) > > at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3278) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4345) > > at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:3952) > > at org.codehaus.janino.UnitCompiler.access$6900(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$10.visitMethodInvocation( > UnitCompiler.java:3251) > > at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:3974) > > at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3278) > > at org.codehaus.janino.UnitCompiler.compileGetValue( > UnitCompiler.java:4345) > > at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1835) > > at org.codehaus.janino.UnitCompiler.access$2000(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$4.visitLocalVariableDeclarationS > tatement(UnitCompiler.java:943) > > at > > org.codehaus.janino.Java$LocalVariableDeclarationStatem > ent.accept(Java.java:2508) > > at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:956) > > at org.codehaus.janino.UnitCompiler.compileStatements( > UnitCompiler.java:997) > > at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2283) > > at > > org.codehaus.janino.UnitCompiler.compileDeclaredMethods( > UnitCompiler.java:820) > > at > > org.codehaus.janino.UnitCompiler.compileDeclaredMethods( > UnitCompiler.java:792) > > at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:505) > > at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:391) > > at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:183) > > at > > org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclara > tion(UnitCompiler.java:345) > > at > > org.codehaus.janino.Java$PackageMemberClassDeclaration. > accept(Java.java:1139) > > at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:352) > > at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:320) > > at > > org.codehaus.janino.JavaSourceClassLoader.generateBytecodes( > JavaSourceClassLoader.java:224) > > ... 46 more > >