[JBoss JIRA] (TEIID-4244) Assertion failed error when joining duplicate rows to a table from other source
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4244?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-4244:
----------------------------------
Steps to Reproduce:
1. In postgresql create the test_a table by the following script:
{code:sql}
CREATE TABLE test_a
(
a integer,
b integer
);
INSERT INTO test_a(a, b) VALUES (1, 1);
INSERT INTO test_a(a, b) VALUES (1, 2);
INSERT INTO test_a(a, b) VALUES (2, 1);
INSERT INTO test_a(a, b) VALUES (2, 2);
INSERT INTO test_a(a, b) VALUES (3, 2);
INSERT INTO test_a(a, b) VALUES (3, 10);
{code}
2. Add postgresql database configuration in standalone-teiid.xml
{code:xml}
<datasource jndi-name="java:/test_pg" pool-name="test_pg" enabled="true" use-java-context="true">
<connection-url>jdbc:postgresql://localhost:5432/test?charSet=utf8</connection-url>
<driver-class>org.postgresql.Driver</driver-class>
<driver>org.postgresql</driver>
<pool>
<min-pool-size>2</min-pool-size>
<max-pool-size>70</max-pool-size>
<prefill>false</prefill>
<use-strict-min>false</use-strict-min>
<flush-strategy>FailingConnectionOnly</flush-strategy>
</pool>
<security>
<user-name>postgres</user-name>
<password>xxxxxx</password>
</security>
<validation>
<check-valid-connection-sql>select 0</check-valid-connection-sql>
</validation>
<timeout>
<blocking-timeout-millis>120000</blocking-timeout-millis>
<idle-timeout-minutes>5</idle-timeout-minutes>
</timeout>
</datasource>
{code}
3. Add in test-vdb.xml java:/test_pg configured in previous step as datasource:
{code:xml}
<model name="test_pg">
<property name="importer.useFullSchemaName" value="false"/>
<property name="importer.tableTypes" value="TABLE,VIEW"/>
<property name="importer.importKeys" value="false"/>
<source name="test_pg" translator-name="myPg" connection-jndi-name="java:/test_pg"/>
</model>
{code}
4. Run the query:
{code:sql}
select * from (select 3 as a, 3 as b union all
select 1 as a, 1 as b union all
select 3 as a, 3 as b) as t1 join test_pg.test_a t2 on t1.a=t2.a limit 10;
{code}
which will fail with ASSERTION FAILED error message. But the following query won't fail:
{code:sql}
select * from (select 1 as a, 1 as b union all
select 3 as a, 3 as b) as t1 join test_pg.test_a t2 on t1.a=t2.a;
{code}
was:
1. In postgresql create the test_a table by the following script:
{code:sql}
CREATE TABLE test_a
(
a integer,
b integer
);
INSERT INTO test_a(a, b) VALUES (1, 1);
INSERT INTO test_a(a, b) VALUES (1, 2);
INSERT INTO test_a(a, b) VALUES (2, 1);
INSERT INTO test_a(a, b) VALUES (2, 2);
INSERT INTO test_a(a, b) VALUES (3, 2);
INSERT INTO test_a(a, b) VALUES (3, 10);
{code}
2. Add postgresql database configuration in standalone-teiid.xml
{code:xml}
<datasource jndi-name="java:/test_pg" pool-name="test_pg" enabled="true" use-java-context="true">
<connection-url>jdbc:postgresql://localhost:5432/test?charSet=utf8</connection-url>
<driver-class>org.postgresql.Driver</driver-class>
<driver>org.postgresql</driver>
<pool>
<min-pool-size>2</min-pool-size>
<max-pool-size>70</max-pool-size>
<prefill>false</prefill>
<use-strict-min>false</use-strict-min>
<flush-strategy>FailingConnectionOnly</flush-strategy>
</pool>
<security>
<user-name>postgres</user-name>
<password>xxxxxx</password>
</security>
<validation>
<check-valid-connection-sql>select 0</check-valid-connection-sql>
</validation>
<timeout>
<blocking-timeout-millis>120000</blocking-timeout-millis>
<idle-timeout-minutes>5</idle-timeout-minutes>
</timeout>
</datasource>
{code}
3. Add in test-vdb.xml java:/test_pg configured in previous step as datasource:
{code:xml}
<model name="test_pg">
<property name="importer.useFullSchemaName" value="false"/>
<property name="importer.tableTypes" value="TABLE,VIEW"/>
<property name="importer.importKeys" value="false"/>
<source name="test_pg" translator-name="myPg" connection-jndi-name="java:/test_pg"/>
</model>
{code}
4. Run the query:
{code:sql}
select * from (select 3 as a, 3 as b union all
select 1 as a, 1 as b union all
select 3 as a, 3 as b) as t1 join test_pg.test_a t2 on t1.a=t2.a;
{code}
which will fail with ASSERTION FAILED error message. But the following query won't fail:
{code:sql}
select * from (select 1 as a, 1 as b union all
select 3 as a, 3 as b) as t1 join test_pg.test_a t2 on t1.a=t2.a;
{code}
Priority: Major (was: Blocker)
> Assertion failed error when joining duplicate rows to a table from other source
> -------------------------------------------------------------------------------
>
> Key: TEIID-4244
> URL: https://issues.jboss.org/browse/TEIID-4244
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.12
> Environment: teiid-8.12-Beta1 on Red Hat JBoss Enterprise Application Platform - Version 6.3.0.GA
> Reporter: dalex dalex
> Assignee: Steven Hawkins
>
> I get the following error when joining duplicate rows to a table from other source:
> {code}
> 17:20:52,718 ERROR [org.teiid.PROCESSOR] (Worker0_QueryProcessorQueue21) irzl30n7Sda0 TEIID30019 Unexpected exception for request irzl30n7Sda0.8: java.lang.AssertionError: ASSERTION
> FAILED: expected reference to be not null
> at org.teiid.core.util.Assertion.failed(Assertion.java:73) [teiid-common-core-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.core.util.Assertion.isNotNull(Assertion.java:100) [teiid-common-core-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.core.util.Assertion.isNotNull(Assertion.java:92) [teiid-common-core-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.common.buffer.TupleBuffer.getBatch(TupleBuffer.java:286) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.common.buffer.TupleBuffer$TupleBufferTupleSource.getBatch(TupleBuffer.java:74) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:62) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.MergeJoinStrategy.compareToPrevious(MergeJoinStrategy.java:279) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.MergeJoinStrategy.process(MergeJoinStrategy.java:237) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.process(EnhancedSortMergeJoinStrategy.java:416) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:227) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:148) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:462) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:344) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:271) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-4244) Assertion failed error when joining duplicate rows to a table from other source
by dalex dalex (JIRA)
dalex dalex created TEIID-4244:
----------------------------------
Summary: Assertion failed error when joining duplicate rows to a table from other source
Key: TEIID-4244
URL: https://issues.jboss.org/browse/TEIID-4244
Project: Teiid
Issue Type: Bug
Components: Query Engine
Affects Versions: 8.12
Environment: teiid-8.12-Beta1 on Red Hat JBoss Enterprise Application Platform - Version 6.3.0.GA
Reporter: dalex dalex
Assignee: Steven Hawkins
Priority: Blocker
I get the following error when joining duplicate rows to a table from other source:
{code}
17:20:52,718 ERROR [org.teiid.PROCESSOR] (Worker0_QueryProcessorQueue21) irzl30n7Sda0 TEIID30019 Unexpected exception for request irzl30n7Sda0.8: java.lang.AssertionError: ASSERTION
FAILED: expected reference to be not null
at org.teiid.core.util.Assertion.failed(Assertion.java:73) [teiid-common-core-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.core.util.Assertion.isNotNull(Assertion.java:100) [teiid-common-core-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.core.util.Assertion.isNotNull(Assertion.java:92) [teiid-common-core-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.common.buffer.TupleBuffer.getBatch(TupleBuffer.java:286) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.common.buffer.TupleBuffer$TupleBufferTupleSource.getBatch(TupleBuffer.java:74) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:62) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.MergeJoinStrategy.compareToPrevious(MergeJoinStrategy.java:279) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.MergeJoinStrategy.process(MergeJoinStrategy.java:237) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.process(EnhancedSortMergeJoinStrategy.java:416) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:227) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:148) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:462) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:344) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:271) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.0.Beta1.jar:8.12.0.Beta1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
{code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-3670) Salesforce query issue
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3670?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3670.
---------------------------------
> Salesforce query issue
> ----------------------
>
> Key: TEIID-3670
> URL: https://issues.jboss.org/browse/TEIID-3670
> Project: Teiid
> Issue Type: Quality Risk
> Components: Salesforce Connector
> Affects Versions: 8.7.3
> Reporter: Mark Drilling
> Assignee: Steven Hawkins
> Priority: Minor
> Fix For: 8.12
>
> Attachments: SFException.txt
>
>
> Linking to JIRA that was logged under Teiid Designer. I was able to reproduce the reported problem with both types of VDB - it is not really a designer issue.
> For this query:
> select Opportunity.CloseDate from SalesForceSource.Campaign, SalesForceSource.Opportunity WHERE Campaign.Id = Opportunity.CampaignId
> I was able to reproduce with earlier 8.7 version of teiid, but it appears to have been addressed in a later 8.7.x version (DV62).
> However I then tried this query:
> select Opportunity.CloseDate from SalesForceSource.Campaign, SalesForceSource.Opportunity WHERE Campaign.Id = 'xx'
> which results in a "Invalid QName in mapping: sf:INVALID_QUERY_FILTER_OPERATOR" exception (see attachment). This occurs in the DV62/teiid8.7.1 version.
> I realize there has been some work recently in the salesforce connector area, so not sure if it is still an issue with recent versions.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-3829) olingo module junit test failed
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3829?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3829.
---------------------------------
> olingo module junit test failed
> -------------------------------
>
> Key: TEIID-3829
> URL: https://issues.jboss.org/browse/TEIID-3829
> Project: Teiid
> Issue Type: Quality Risk
> Components: Build/Kits
> Affects Versions: 8.9
> Reporter: Kylin Soong
> Assignee: Steven Hawkins
> Fix For: 8.12.3, 8.13
>
>
> olingo module junit test failed:
> {code}
> Results :
> Failed tests:
> TestODataSQLBuilder.testEq:431->te:400->helpTest:227 expected:<...g0 WHERE g0.e1 = {t'[04]:20:02'} ORDER BY g0...> but was:<...g0 WHERE g0.e1 = {t'[16]:20:02'} ORDER BY g0...>
> TestODataSQLBuilder.testTimeMethods:552->te:400->helpTest:227 expected:<...YEAR({ts'2008-10-13 [04]:20:02.0'}) = 2008 O...> but was:<...YEAR({ts'2008-10-13 [16]:20:02.0'}) = 2008 O...>
> Tests run: 109, Failures: 2, Errors: 0, Skipped: 0
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-3848) Issue with hive literal timestamps
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3848?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3848.
---------------------------------
> Issue with hive literal timestamps
> ----------------------------------
>
> Key: TEIID-3848
> URL: https://issues.jboss.org/browse/TEIID-3848
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Affects Versions: 8.11
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Fix For: 8.12.3, 8.13
>
>
> With testing TEIID-3847 Hive 1.2.1 failed to compare appropriately with a timestamp string literal in the source sql containing .0 fractional seconds:
> t = '2000-01-01 12:00:00.0' -- did not work
> But the following does
> t = '2000-01-01 12:00:00'
> t = cast('2000-01-01 12:00:00.0' as timestamp)
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-3846) Wrong alias rewriting in subqueries
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3846?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3846.
---------------------------------
> Wrong alias rewriting in subqueries
> -----------------------------------
>
> Key: TEIID-3846
> URL: https://issues.jboss.org/browse/TEIID-3846
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.7
> Reporter: Salvatore R
> Assignee: Steven Hawkins
> Fix For: 8.12.3, 8.13
>
>
> I defined two tables in PostgreSQL (but it's reproducible also in other databases like MySQL, for example) as follows:
> {code:sql}
> CREATE TABLE test_a
> (
> a integer,
> b integer
> );
> CREATE TABLE test_b
> (
> b integer,
> c integer
> );
> {code}
> Running this query:
> {code:sql}
> SELECT
> *
> FROM
> ( SELECT
> ( SELECT x.a FROM pg.test_a AS x WHERE x.b = g_0.c ) AS c_2
> FROM
> pg.test_b AS g_0
> ) AS v_0
> {code}
> I get the following exception:
> {code:sql}
> 13:11:30,073 WARN [org.teiid.CONNECTOR] (Worker5_QueryProcessorQueue50) 1iTDksSjXt1V Connector worker process failed for atomic-request=1iTDksSjXt1V.16.1.11: org.teiid.translator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: SELECT v_0.c_0 FROM (SELECT (SELECT g_1."a" FROM "public"."test_a" AS g_1 WHERE g_1."b" = g_1."c") AS c_0 FROM "public"."test_b" AS g_0) AS v_0]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131) [translator-jdbc-8.12.0.CR1.jar:8.12.0.CR1]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:349)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_67]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_67]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_67]
> at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_67]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy47.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:298)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:110)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:107)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_67]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:58)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
> Caused by: org.postgresql.util.PSQLException: ERROR: column g_1.c does not exist
> Position: 91
> at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2157)
> at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1886)
> at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
> at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:555)
> at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:417)
> at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:302)
> at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.executeQuery(WrappedPreparedStatement.java:462)
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:123) [translator-jdbc-8.12.0.CR1.jar:8.12.0.CR1]
> ... 18 more
> {code}
> It seems that the problem is related to the alias "g_0" used for the source table "pg.test_b". In fact, if a different alias is used, the query runs without errors:
> {code:sql}
> SELECT
> *
> FROM
> ( SELECT
> ( SELECT x.a FROM pg.test_a AS x WHERE x.b = y.c ) AS c_2
> FROM
> pg.test_b AS y
> ) AS v_0
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-3601) support larger row counts
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3601?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3601.
---------------------------------
> support larger row counts
> -------------------------
>
> Key: TEIID-3601
> URL: https://issues.jboss.org/browse/TEIID-3601
> Project: Teiid
> Issue Type: Feature Request
> Components: JDBC Driver, Query Engine
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Fix For: 9.0
>
>
> In some extreme cases intermediate and final result sizes can exceed 2^31 - 1 rows. To support this we would need to make extensive changes:
> In the engine the tuplebuffer and logic related to indexing would need to change to long rather than int - this also touches things like join and insert processing.
> A new protocol version would be needed as resultmessages would need to use long rather than int indexing - however JDBC implicitly assumes int indexing such as with ResultSet.getRow.
> Temp table handling would need to be updated to support table sizes greater than max int.
> From a processing side, although not just related row counts, we would consider increasing the parallelism of the plan. The most fundamental way to do this is to partition source queries such that more data can be read in parallel from the source. This would require extension metadata to indicate the partitioning scheme. To take full advantage of such a change the plan itself would have to be paralellized such that as much processing as possible is performed on each partition (rather than the simple case in multi-source where the data is simply unioned back together in the parent node).
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (TEIID-3831) For results set caching there should scope metadata for source tables/procedures
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3831?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-3831.
---------------------------------
> For results set caching there should scope metadata for source tables/procedures
> --------------------------------------------------------------------------------
>
> Key: TEIID-3831
> URL: https://issues.jboss.org/browse/TEIID-3831
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Fix For: 8.12.3, 8.13
>
>
> Functions have optional metadata to convey their determinism, which affects the caching scope. However we don't have extension metadata or per execution metadata around source queries (there is a scope field on a cache directive, but that only applies to source level caching). We should provide a general mechanism so that users aren't required to manually override the result set cache scope.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months