Can you open a JIRA with instructions to reproduce the bug? Thanks, Fabian
2015-08-18 12:33 GMT+02:00 Chesnay Schepler <ches...@apache.org>: > While running the following job i run into an exception: > Tuple comparator creation has a bug > java.lang.IllegalArgumentException: Tuple comparator creation has a bug > at > org.apache.flink.api.java.typeutils.TupleTypeInfo.getNewComparator(TupleTypeInfo.java:131) > ... > > job: > > ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment(); > DataSet<Tuple2<Tuple1<byte[]>, byte[]>> data = env.fromElements( > new Tuple2<Tuple1<byte[]>, byte[]>(new Tuple1<byte[]>(new > byte[]{1,2,3,4}), new byte[]{1,2,3,4,5}), > new Tuple2<Tuple1<byte[]>, byte[]>(new Tuple1<byte[]>(new > byte[]{1,2,3,4}), new byte[]{1,2,3,4,5}), > new Tuple2<Tuple1<byte[]>, byte[]>(new Tuple1<byte[]>(new > byte[]{1,2,3,4}), new byte[]{1,2,3,4,5}), > new Tuple2<Tuple1<byte[]>, byte[]>(new Tuple1<byte[]>(new > byte[]{1,2,3,4}), new byte[]{1,2,3,4,5})); > > data.groupBy("f0.f0").reduceGroup(new DummyReduce()).print(); > > The reduce function just returns all values as they come in. > > full exception: > Tuple comparator creation has a bug > java.lang.IllegalArgumentException: Tuple comparator creation has a bug > at > org.apache.flink.api.java.typeutils.TupleTypeInfo.getNewComparator(TupleTypeInfo.java:131) > at > org.apache.flink.api.common.typeutils.CompositeType.createComparator(CompositeType.java:133) > at > org.apache.flink.api.common.typeutils.CompositeType.createComparator(CompositeType.java:122) > at > org.apache.flink.api.common.operators.base.GroupReduceOperatorBase.getTypeComparator(GroupReduceOperatorBase.java:155) > at > org.apache.flink.api.common.operators.base.GroupReduceOperatorBase.executeOnCollections(GroupReduceOperatorBase.java:184) > at > org.apache.flink.api.common.operators.CollectionExecutor.executeUnaryOperator(CollectionExecutor.java:236) > at > org.apache.flink.api.common.operators.CollectionExecutor.execute(CollectionExecutor.java:143) > at > org.apache.flink.api.common.operators.CollectionExecutor.executeUnaryOperator(CollectionExecutor.java:215) > at > org.apache.flink.api.common.operators.CollectionExecutor.execute(CollectionExecutor.java:143) > at > org.apache.flink.api.common.operators.CollectionExecutor.execute(CollectionExecutor.java:125) > at > org.apache.flink.api.common.operators.CollectionExecutor.executeDataSink(CollectionExecutor.java:176) > at > org.apache.flink.api.common.operators.CollectionExecutor.execute(CollectionExecutor.java:152) > at > org.apache.flink.api.common.operators.CollectionExecutor.execute(CollectionExecutor.java:125) > at > org.apache.flink.api.common.operators.CollectionExecutor.execute(CollectionExecutor.java:109) > at > org.apache.flink.api.java.CollectionEnvironment.execute(CollectionEnvironment.java:33) > at > org.apache.flink.test.util.CollectionTestEnvironment.execute(CollectionTestEnvironment.java:35) > at > org.apache.flink.test.util.CollectionTestEnvironment.execute(CollectionTestEnvironment.java:30) > at org.apache.flink.api.java.DataSet.collect(DataSet.java:408) > at org.apache.flink.api.java.DataSet.print(DataSet.java:1349) > at > org.apache.flink.languagebinding.api.java.python.AbstractPythonTest.testProgram(AbstractPythonTest.java:42) > at > org.apache.flink.test.util.JavaProgramTestBase.testJobCollectionExecution(JavaProgramTestBase.java:226) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) > at org.junit.runners.ParentRunner.run(ParentRunner.java:309) > at > org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264) > at > org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153) > at > org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124) > at > org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) > at > org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) > at > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) >