[
https://issues.jboss.org/browse/TEIID-5061?page=com.atlassian.jira.plugin...
]
Steven Hawkins commented on TEIID-5061:
---------------------------------------
I can see just empty result
We generally won't return an empty resultset. There is at least a single row, but
it's not being shown by Squirrel.
with error message but the error message is like just info message
Squirrel must be suppressing the actual exception on ResultSet.next and only showing the
following exceptions acting against the now defunct resultset.
You can confirm the behavior I'm describing in your own java program. This mostly
highlights that Squirel must not expect exceptions like these on the ResultSet.next
method.
For us to be able to return the exception instead of results initially of course requires
fully processing the resultset on the server side. This is avoided for non-transactional
statements - which is non-standard behavior, but does greatly reduce latency. But you
could change this to be an enhancement request to always fully process before returning
any results.
UNION query does not fail or fails with incorrect error message
---------------------------------------------------------------
Key: TEIID-5061
URL:
https://issues.jboss.org/browse/TEIID-5061
Project: Teiid
Issue Type: Bug
Components: Query Engine
Affects Versions: 9.3.1
Environment: teiid-9.3.1 on WildFly Full 10.0.0.Final (WildFly Core
2.0.10.Final)
Reporter: dalex dalex
Assignee: Steven Hawkins
Priority: Blocker
Attachments: errorevaluating_1.jpg, errorevaluating_2.jpg,
errorevaluating_2_1.jpg
Running the following queries:
{code:sql}
select a from test_pg.test_a
union all
select 1
union all
select * from (call procs.pr()) x
{code}
or
{code:sql}
select a from test_pg.test_a
union all
select 1
union all
select * from (call procs.pr()) x
union all
select a from test_pg.test_a
{code}
UNION queries do not fail or fail with an incorrect error message returning no results.
That is the first run will return the following stacktrace in logs:
{noformat}
2017-09-12 15:06:26,585 WARN [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue7)
XH74byN2GJ4K TEIID30020 Processing exception for request XH74byN2GJ4K.0 'TEIID30167
org.teiid.jdbc.
TeiidSQLException: TEIID30328 Unable to evaluate (1 / 0): TEIID30384 Error while
evaluating function /'. Originally ProcedureErrorInstructionException '/ by
zero' FunctionMethods.jav
a:296. Enable more detailed logging to see the entire stacktrace.
{noformat}
returning no results, the second run of the same query will return:
{noformat}
2017-09-12 15:07:39,427 WARN [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue10)
XH74byN2GJ4K TEIID30020 Processing exception for request XH74byN2GJ4K.1 'TEIID30167
org.teiid.jdbc
.TeiidSQLException: TEIID30328 Unable to evaluate (1 / 0): TEIID30384 Error while
evaluating function /'. Originally ProcedureErrorInstructionException '/ by
zero' FunctionMethods.ja
va:296. Enable more detailed logging to see the entire stacktrace.
2017-09-12 15:07:39,434 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,450 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,454 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,465 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,470 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,474 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,483 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,487 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,500 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,506 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,516 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,520 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,534 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,538 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
2017-09-12 15:07:39,549 WARN [org.teiid.PROCESSOR] (NIO1) XH74byN2GJ4K TEIID40011
Processing exception 'TEIID30495 The request XH74byN2GJ4K.1 has been closed.' for
session XH74byN2G
J4K. Exception type org.teiid.core.TeiidProcessingException thrown from
org.teiid.dqp.internal.process.DQPCore.getRequestWorkItem(DQPCore.java:475). Enable more
detailed logging to
see the entire stacktrace.
{noformat}
again without any query results.
So these queries should return error messages like usual call of the virtual procedure pr
does:
{code:sql}
call procs.pr()
{code}
instead of just closing requests.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)