[JBoss JIRA] (TEIID-3101) Assertion failed with UNION then EXCEPT
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3101?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3101.
---------------------------------
> Assertion failed with UNION then EXCEPT
> ---------------------------------------
>
> Key: TEIID-3101
> URL: https://issues.jboss.org/browse/TEIID-3101
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.9
> Reporter: Tom Arnold
> Assignee: Steven Hawkins
> Fix For: 8.7.1, 8.9
>
>
> Ran into this when playing with set operations. Teiid 8.9.0.Alpha2 from Git.
> Query:
> {code:sql}
> (select 'a' union select 'b') except select 'c';
> {code}
> Trace:
> {code}
> 03:18:45,467 DEBUG [org.teiid.COMMAND_LOG] (New I/O worker #12) WEI32e8Ynv+s START USER COMMAND: startTime=2014-08-27 03:18:45.467 requestID=WEI32e8Ynv+s.70 txID=null sessionID=WEI32e8Ynv+s applicationName=JDBCprincipal=user@teiid-security vdbName=Foo vdbVersion=1 sql=(select 'a' union select 'b') except select 'c'
> 03:18:45,470 INFO [org.teiid.PLANNER] (Worker13_QueryProcessorQueue748) WEI32e8Ynv+s
> ============================================================================
> USER COMMAND:
> SELECT 'a' UNION SELECT 'b' EXCEPT SELECT 'c'
> ----------------------------------------------------------------------------
> OPTIMIZE:
> SELECT 'a' UNION SELECT 'b' EXCEPT SELECT 'c'
> ----------------------------------------------------------------------------
> GENERATE CANONICAL:
> SELECT 'a' UNION SELECT 'b' EXCEPT SELECT 'c'
> CANONICAL PLAN:
> SetOperation(groups=[], props={SET_OPERATION=EXCEPT, USE_ALL=false})
> SetOperation(groups=[], props={SET_OPERATION=UNION, USE_ALL=false})
> Project(groups=[], props={PROJECT_COLS=['a']})
> Project(groups=[], props={PROJECT_COLS=['b']})
> Project(groups=[], props={PROJECT_COLS=['c']})
> ============================================================================
> EXECUTING PlaceAccess
> AFTER:
> SetOperation(groups=[], props={SET_OPERATION=EXCEPT, USE_ALL=false})
> SetOperation(groups=[], props={SET_OPERATION=UNION, USE_ALL=false})
> Project(groups=[], props={PROJECT_COLS=['a']})
> Project(groups=[], props={PROJECT_COLS=['b']})
> Project(groups=[], props={PROJECT_COLS=['c']})
> ============================================================================
> EXECUTING PlanUnions
> AFTER:
> SetOperation(groups=[], props={SET_OPERATION=EXCEPT, USE_ALL=false})
> SetOperation(groups=[], props={SET_OPERATION=UNION, USE_ALL=true})
> Project(groups=[])
> Project(groups=[])
> Project(groups=[])
> ============================================================================
> EXECUTING RaiseAccess
> AFTER:
> SetOperation(groups=[])
> SetOperation(groups=[])
> Project(groups=[])
> Project(groups=[])
> Project(groups=[])
> ============================================================================
> EXECUTING AssignOutputElements
> AFTER:
> SetOperation(groups=[], props={SET_OPERATION=EXCEPT, USE_ALL=false, OUTPUT_COLS=['a']})
> SetOperation(groups=[], props={SET_OPERATION=UNION, USE_ALL=true, OUTPUT_COLS=['a']})
> Project(groups=[], props={PROJECT_COLS=['a'], OUTPUT_COLS=['a']})
> Project(groups=[], props={PROJECT_COLS=['b'], OUTPUT_COLS=['b']})
> Project(groups=[], props={PROJECT_COLS=['c'], OUTPUT_COLS=['c']})
> ============================================================================
> EXECUTING CalculateCost
> AFTER:
> SetOperation(groups=[], props={SET_OPERATION=EXCEPT, USE_ALL=false, OUTPUT_COLS=['a'], EST_CARDINALITY=1.0, EST_COL_STATS={'a'=[1.0, 1.0]}})
> SetOperation(groups=[], props={SET_OPERATION=UNION, USE_ALL=true, OUTPUT_COLS=['a'], EST_CARDINALITY=2.0, EST_COL_STATS={'a'=[1.5, 0.0]}})
> Project(groups=[], props={PROJECT_COLS=['a'], OUTPUT_COLS=['a'], EST_CARDINALITY=1.0, EST_COL_STATS={'a'=[1.0, 0.0]}})
> Project(groups=[], props={PROJECT_COLS=['b'], OUTPUT_COLS=['b'], EST_CARDINALITY=1.0, EST_COL_STATS={'b'=[1.0, 0.0]}})
> Project(groups=[], props={PROJECT_COLS=['c'], OUTPUT_COLS=['c'], EST_CARDINALITY=1.0, EST_COL_STATS={'c'=[1.0, 0.0]}})
> ============================================================================
> EXECUTING PlanSorts
> AFTER:
> SetOperation(groups=[], props={SET_OPERATION=EXCEPT, USE_ALL=false, OUTPUT_COLS=['a'], EST_CARDINALITY=1.0, EST_COL_STATS={'a'=[1.0, 1.0]}})
> SetOperation(groups=[], props={SET_OPERATION=UNION, USE_ALL=true, OUTPUT_COLS=['a'], EST_CARDINALITY=2.0, EST_COL_STATS={'a'=[1.5, 0.0]}})
> Project(groups=[])
> Project(groups=[])
> Project(groups=[])
> ============================================================================
> EXECUTING CollapseSource
> AFTER:
> SetOperation(groups=[])
> SetOperation(groups=[])
> Project(groups=[])
> Project(groups=[])
> Project(groups=[])
> ============================================================================
> CONVERTING PLAN TREE TO PROCESS TREE
> PROCESS PLAN =
> JoinNode(0) [MERGE JOIN (SORT_DISTINCT/SORT_DISTINCT)] [ANTI SEMI JOIN] criteria=['a'='c'] output=['a']
> ProjectNode(2) output=['a'] ['a']
> ProjectNode(3) output=['b'] ['b']
> ProjectNode(4) output=['c'] ['c']
> ============================================================================
> ----------------------------------------------------------------------------
> OPTIMIZATION COMPLETE:
> PROCESSOR PLAN:
> JoinNode(0) [MERGE JOIN (SORT_DISTINCT/SORT_DISTINCT)] [ANTI SEMI JOIN] criteria=['a'='c'] output=['a']
> ProjectNode(2) output=['a'] ['a']
> ProjectNode(3) output=['b'] ['b']
> ProjectNode(4) output=['c'] ['c']
> ============================================================================
> 03:18:45,473 DEBUG [org.teiid.COMMAND_LOG] (Worker13_QueryProcessorQueue748) WEI32e8Ynv+s ERROR USER COMMAND: endTime=2014-08-27 03:18:45.472 requestID=WEI32e8Ynv+s.70 txID=null sessionID=WEI32e8Ynv+s principal=user@teiid-security vdbName=Foo vdbVersion=1 finalRowCount=null
> 03:18:45,473 ERROR [org.teiid.PROCESSOR] (Worker13_QueryProcessorQueue748) WEI32e8Ynv+s TEIID30019 Unexpected exception for request WEI32e8Ynv+s.70: java.lang.AssertionError: Assertion failed.
> at org.teiid.core.util.Assertion.failed(Assertion.java:73) [teiid-common-core-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.core.util.Assertion.assertTrue(Assertion.java:68) [teiid-common-core-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.core.util.Assertion.assertTrue(Assertion.java:60) [teiid-common-core-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.SortUtility.<init>(SortUtility.java:158) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.SortUtility.<init>(SortUtility.java:194) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.SourceState.sort(SourceState.java:287) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.MergeJoinStrategy.loadRight(MergeJoinStrategy.java:359) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:208) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:136) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:444) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:326) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:254) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:274) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.9.0.Alpha2-SNAPSHOT.jar:8.9.0.Alpha2-SNAPSHOT]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_02]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_02]
> at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_02]
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 5 months
[JBoss JIRA] (TEIID-3171) NullPointerException in LogonImpl when Credential Delegate is not enabled
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3171?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3171.
---------------------------------
> NullPointerException in LogonImpl when Credential Delegate is not enabled
> -------------------------------------------------------------------------
>
> Key: TEIID-3171
> URL: https://issues.jboss.org/browse/TEIID-3171
> Project: Teiid
> Issue Type: Bug
> Affects Versions: 8.8
> Reporter: Cristiano Nicolai
> Assignee: Steven Hawkins
> Priority: Blocker
> Fix For: 8.7.1, 8.9
>
>
> When trying to connect via JDBC using GSS authentication, the follwing exception is thrown if Credential Delegation is not enabled. Via ODBC, same setup works fine.
> 2014-10-14 11:22:35,199 INFO [org.teiid.SECURITY] (New I/O worker #4:) TEIID40017 Unexpected exception for session null: java.lang.NullPointerException
> at java.util.Hashtable.put(Hashtable.java:514)
> at org.teiid.transport.LogonImpl.neogitiateGssLogin(LogonImpl.java:197)
> 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.teiid.transport.ServerWorkItem.run(ServerWorkItem.java:87)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:274)
> at org.teiid.transport.SocketClientInstance.processMessagePacket(SocketClientInstance.java:207)
> at org.teiid.transport.SocketClientInstance.receivedMessage(SocketClientInstance.java:193)
> at org.teiid.transport.SSLAwareChannelHandler.messageReceived(SSLAwareChannelHandler.java:211)
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 5 months
[JBoss JIRA] (TEIID-3086) Exception with unclear message
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3086?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3086.
---------------------------------
> Exception with unclear message
> ------------------------------
>
> Key: TEIID-3086
> URL: https://issues.jboss.org/browse/TEIID-3086
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Affects Versions: 8.7
> Environment: OS: Fedora 20
> architecture: x86_64
> Reporter: Juraj Duráni
> Assignee: Steven Hawkins
> Attachments: exception-stack-trace, full-server.log, server.log
>
>
> Description of problem:
> Unexpected exception. Returned exception indicates that query failed but there is no reason in message.
> Actual results:
> TEIID30504 Remote org.teiid.core.TeiidProcessingException: TEIID30504 Source: 4200 TEIID11008:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: SELECT cast(g_0.bytenum AS tinyint) AS c_0, abs(cast(g_0.bytenum AS tinyint)) AS c_1 FROM smallb AS g_0 ORDER BY c_0]
> Expected results:
> Remote java.sql.SQLException: Specified cursor is not known to the server.
> Additional info:
> server log and exception stack trace in attachment
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 5 months
[JBoss JIRA] (TEIID-3148) Teiid exception with vdb from flat file containing utf8 non-ascii character
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3148?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3148.
---------------------------------
> Teiid exception with vdb from flat file containing utf8 non-ascii character
> ---------------------------------------------------------------------------
>
> Key: TEIID-3148
> URL: https://issues.jboss.org/browse/TEIID-3148
> Project: Teiid
> Issue Type: Bug
> Affects Versions: 8.7.1
> Environment: Windows OS
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
>
> This issue is Windows OS specific. When trying to parse text csv file in utf8 which contains non-ascii characters an exception occurs. When the non-ascii characters are removed, everything passes well. On RHEL or Solaris this issue doesn't occur.
> TEIID30020 Processing exception for request rgzZ3dn9tVMX.0 'TEIID30179 Text parse error: Could not read data in file:/w:/workspace/JDV6_1_BQT-jstastny/jdk/java17_default/label/Win2k8_x86/eap/standalone/deployments/TextEmployeeTest-files/EmpData.txt'. Originally TeiidProcessingException 'Input length = 1' CoderResult.java:278.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 5 months
[JBoss JIRA] (TEIID-2892) OData buffers ALL rows from resultset before returning the first batch
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2892?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-2892.
---------------------------------
> OData buffers ALL rows from resultset before returning the first batch
> ----------------------------------------------------------------------
>
> Key: TEIID-2892
> URL: https://issues.jboss.org/browse/TEIID-2892
> Project: Teiid
> Issue Type: Quality Risk
> Components: OData
> Affects Versions: 8.4.1
> Environment: Tested with Jboss DV 6.0.0. GA (enterprise edition) on Apple OSX 10.9.2 and Oracle Java VM 1.7.0_51.
> Reporter: Patrick Deenen
> Assignee: Steven Hawkins
> Attachments: logfiles.zip
>
>
> OData doesn’t batch internally opposed to JDBC which does. E.g. when in JDBC a query is done with a large result, only the first 2048 rows are physically fetched from the source database and only the first 200 rows (depending on client application) are returned. But when the same query is executed by the use of Odata ALL rows in the result set are physically fetched by DV and stored in the buffer. Even with the default Odata fetch batch size of 256. This makes the Odata interface very inefficient for large query results where one only is interessed in the first 256 rows.
> Attached you can find two log files which show the problem.
> The Odata query used is:
> http://localhost:8080/odata/PMA/EVENT_FACT?$filter=event_fact_id%20ge%207...
> Which is identical to the JDBC query used:
> select * from event_fact where event_fact_id between 747000000 and 747200000;
> In both cases the result contains 200.000 rows
> ODATA log information analysis (log file ’server start + odata batch 256.log’):
> row 4543 - 4657 - Start query
> row 4658 - 9030 - Read ALL results from result set and store them in buffer
> row 9031 - 9035 - Close DB connection
> row 9036 - 14647 - Clean buffers and create response?
> row 14648 - 14661 - return first batch and close connection
> JDBC log information analysis (log file ’server start + jdbc.log’):
> row 4925 - 5112 - Start query
> row 5113 - 5166 - Read ONLY the first 2048 results from result set and store them in buffer and return response
> row 5157 - 5214 - Close DB connection
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 5 months