[reporter="angel", created="Fri, 17 Mar 2006 15:12:32 -0500 (GMT-05:00)"]
There are a couple of queries with UNION and UNNEST that are causing sqlline to
crash.
With UNION and UNNEST
0: jdbc:farrago:> select * from unnest(values(multiset[1]) union values(multiset
[2]));
java: UncollectExecStream.cpp:106: virtual fennel::ExecStreamResult
fennel::UncollectExecStream::execute(const fennel::ExecStreamQuantum&):
Assertion `bytesWritten == inputTupleData[0].cbData' failed.
sqllineEngine: line 16: 4916 Aborted java ${SERVER_JAVA_ARGS}
${SQLLINE_JAVA_ARGS} -u jdbc:farrago: -d
net.sf.farrago.jdbc.engine.FarragoJdbcEngineDriver -n guest $*
With MULTISET UNION and UNNEST
0: jdbc:farrago:> select from unnest((multiset[1] multiset union multiset
[1,2]));
java: BTreeBuilder.cpp:325: void fennel::BTreeBuilder::createEmptyRoot():
Assertion`getRootPageId() == NULL_PAGE_ID' failed.
sqllineEngine: line 16: 6978 Aborted java ${SERVER_JAVA_ARGS}
${SQLLINE_JAVA_ARGS} -u jdbc:farrago: -d
net.sf.farrago.jdbc.engine.FarragoJdbcEngineDriver -n guest $
These testcases are in regressionsql/multiset.sql
(the behavior should be the same when running sqllineEngine directly).
I've also observed if .sql file under regressionsql, and do
"junitSingle regressionsql/multiset.sql" it gives the following
before crashing with the getRootPageId() == NULL_PAGE_ID:
0: jdbc:farrago:> values(multiset[1]) union values(multiset[2]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:> values(multiset[1]) union all values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0001000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union distinct values(multiset[1]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:>
0: jdbc:farrago:> -- select * from unnest(values(multiset[1]) union values
(multiset[2]));
0: jdbc:farrago:>
0: jdbc:farrago:> values(multiset[1] multiset union multiset[1,2]);
If I put the .sql file under unitsql, and do
"junitSingle unitsql/multiset.sql" it gives the following
and does not crash:
0: jdbc:farrago:> values(multiset[1]) union values(multiset[2]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:> values(multiset[1]) union all values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0001000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union distinct values(multiset[1]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:>
0: jdbc:farrago:> -- select * from unnest(values(multiset[1]) union values
(multiset[2]));
0: jdbc:farrago:>
0: jdbc:farrago:> values(multiset[1] multiset union multiset[1,2]);
0: jdbc:farrago:> values(multiset[1]) union values(multiset[2]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0002000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union all values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0001000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union distinct values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
+-------------+
0: jdbc:farrago:>
0: jdbc:farrago:> -- select * from unnest(values(multiset[1]) union values
(multiset[2]));
0: jdbc:farrago:>
0: jdbc:farrago:> values(multiset[1] multiset union multiset[1,2]);
Error: java.lang.AssertionError: Internal error: input not found (state=,code=0)
0: jdbc:farrago:> values(multiset[1] multiset union all multiset[1,2]);
Error: java.lang.AssertionError: Internal error: input not found (state=,code=0)
0: jdbc:farrago:> values(multiset[1] multiset union distinct multiset[1,2]);
Error: java.lang.AssertionError: Internal error: input not found (state=,code=0)
[reporter="angel", created="Fri, 17 Mar 2006 15:12:32 -0500 (GMT-05:00)"] There are a couple of queries with UNION and UNNEST that are causing sqlline to
crash.
0: jdbc:farrago:> select * from unnest(values(multiset[1]) union values(multiset
[2]));
java: UncollectExecStream.cpp:106: virtual fennel::ExecStreamResult
fennel::UncollectExecStream::execute(const fennel::ExecStreamQuantum&):
Assertion `bytesWritten == inputTupleData[0].cbData' failed.
sqllineEngine: line 16: 4916 Aborted java ${SERVER_JAVA_ARGS}
${SQLLINE_JAVA_ARGS} -u jdbc:farrago: -d
net.sf.farrago.jdbc.engine.FarragoJdbcEngineDriver -n guest $*
0: jdbc:farrago:> select from unnest((multiset[1] multiset union multiset
[1,2]));
java: BTreeBuilder.cpp:325: void fennel::BTreeBuilder::createEmptyRoot():
Assertion`getRootPageId() == NULL_PAGE_ID' failed.
sqllineEngine: line 16: 6978 Aborted java ${SERVER_JAVA_ARGS}
${SQLLINE_JAVA_ARGS} -u jdbc:farrago: -d
net.sf.farrago.jdbc.engine.FarragoJdbcEngineDriver -n guest $
These testcases are in regressionsql/multiset.sql
(the behavior should be the same when running sqllineEngine directly).
I've also observed if .sql file under regressionsql, and do
"junitSingle regressionsql/multiset.sql" it gives the following
before crashing with the getRootPageId() == NULL_PAGE_ID:
0: jdbc:farrago:> values(multiset[1]) union values(multiset[2]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:> values(multiset[1]) union all values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0001000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union distinct values(multiset[1]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:>
0: jdbc:farrago:> -- select * from unnest(values(multiset[1]) union values
(multiset[2]));
0: jdbc:farrago:>
0: jdbc:farrago:> values(multiset[1] multiset union multiset[1,2]);
If I put the .sql file under unitsql, and do
"junitSingle unitsql/multiset.sql" it gives the following
and does not crash:
0: jdbc:farrago:> values(multiset[1]) union values(multiset[2]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:> values(multiset[1]) union all values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0001000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union distinct values(multiset[1]);
Error: java.lang.AssertionError: RuleQueue already contained rel (state=,code=0)
0: jdbc:farrago:>
0: jdbc:farrago:> -- select * from unnest(values(multiset[1]) union values
(multiset[2]));
0: jdbc:farrago:>
0: jdbc:farrago:> values(multiset[1] multiset union multiset[1,2]);
0: jdbc:farrago:> values(multiset[1]) union values(multiset[2]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0002000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union all values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
| 0001000000 |
+-------------+
0: jdbc:farrago:> values(multiset[1]) union distinct values(multiset[1]);
+-------------+
| EXPR$0 |
+-------------+
| 0001000000 |
+-------------+
0: jdbc:farrago:>
0: jdbc:farrago:> -- select * from unnest(values(multiset[1]) union values
(multiset[2]));
0: jdbc:farrago:>
0: jdbc:farrago:> values(multiset[1] multiset union multiset[1,2]);
Error: java.lang.AssertionError: Internal error: input not found (state=,code=0)
0: jdbc:farrago:> values(multiset[1] multiset union all multiset[1,2]);
Error: java.lang.AssertionError: Internal error: input not found (state=,code=0)
0: jdbc:farrago:> values(multiset[1] multiset union distinct multiset[1,2]);
Error: java.lang.AssertionError: Internal error: input not found (state=,code=0)