[JBoss JIRA] (TEIID-4520) Support for Exasol Connector
by Rafal Korytkowski (JIRA)
[ https://issues.jboss.org/browse/TEIID-4520?page=com.atlassian.jira.plugin... ]
Rafal Korytkowski edited comment on TEIID-4520 at 5/8/18 7:52 AM:
------------------------------------------------------------------
Thanks [~rareddy]! My other question is how do we handle differences between jdbc data sources?
E.g. SELECT ASIN(1/ -24); returns -0.0416787324225779 in MySQL, but 0.0 in Exasol. It's because 1 is automatically converted to double in MySQ, whereas in Exasol it needs to be explicit with ASIN(1.0/ -24); (this is actually not the case, just an example).
Does developing a translator mean we need to eliminate such differences to have same results or just make sure that queries coming out of TEIID are valid for that particular data source?
was (Author: rkorytkowski):
Thanks [~rareddy]! My other question is how do we handle differences between jdbc data sources?
E.g. SELECT ASIN(1/ -24); returns -0.0416787324225779 in MySQL, but 0.0 in Exasol. It's because 1 is automatically converted to double in MySQ, whereas in Exasol it needs to be explicit with ASIN(1.0/ -24);
Does developing a translator mean we need to eliminate such differences to have same results or just make sure that queries coming out of TEIID are valid for that particular data source?
> Support for Exasol Connector
> ----------------------------
>
> Key: TEIID-4520
> URL: https://issues.jboss.org/browse/TEIID-4520
> Project: Teiid
> Issue Type: Feature Request
> Components: Misc. Connectors
> Affects Versions: 9.x
> Reporter: Van Halbert
> Assignee: Andrej Šmigala
> Fix For: 10.x, Open To Community
>
>
> Requesting support for Exasol Connector
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-4520) Support for Exasol Connector
by Rafal Korytkowski (JIRA)
[ https://issues.jboss.org/browse/TEIID-4520?page=com.atlassian.jira.plugin... ]
Rafal Korytkowski commented on TEIID-4520:
------------------------------------------
Thanks [~rareddy]! My other question is how do we handle differences between jdbc data sources?
E.g. SELECT ASIN(1/ -24); returns -0.0416787324225779 in MySQL, but 0.0 in Exasol. It's because 1 is automatically converted to double in MySQ, whereas in Exasol it needs to be explicit with ASIN(1.0/ -24);
Does developing a translator mean we need to eliminate such differences to have same results or just make sure that queries coming out of TEIID are valid for that particular data source?
> Support for Exasol Connector
> ----------------------------
>
> Key: TEIID-4520
> URL: https://issues.jboss.org/browse/TEIID-4520
> Project: Teiid
> Issue Type: Feature Request
> Components: Misc. Connectors
> Affects Versions: 9.x
> Reporter: Van Halbert
> Assignee: Andrej Šmigala
> Fix For: 10.x, Open To Community
>
>
> Requesting support for Exasol Connector
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-5335) "No value was available" in ROW_NUMBER while inserting in foreign temporary table
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5335?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5335:
---------------------------------------
Thanks Bram
> "No value was available" in ROW_NUMBER while inserting in foreign temporary table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-5335
> URL: https://issues.jboss.org/browse/TEIID-5335
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 10.2.1
> Reporter: Bram Gadeyne
> Assignee: Steven Hawkins
> Fix For: 10.3, 10.2.2
>
> Attachments: TEIID-5335.debugplan.txt
>
>
> while executing the following query the following error occurs:
> {code:sql}
> insert into rep149_variables (patientid,variableid,scoretime,varvalue)
> select patientid, code, entertime, 1 as varvalue
> from (
> select cr.code, ci.patientid, ci.entertime, row_number() over(partition by ci.patientid, ci.codeid order by ci.entertime) as rang
> from izisprod.S_CodeSystemRef csr
> join izisprod.S_CodeGroupRef cgr on cgr.CodeSysID = csr.CodeSysID
> join izisprod.S_CodeRef cr on cr.GroupID = cgr.GroupID and cr.code not in ('HK_GEEN','MZ_GEEN','zMG_fout')
> join iziswh.P_CodedItem ci on ci.CodeID = cr.CodeID and ci.ItemStatus = 0
> join rep149_cohort c on c.patientid = ci.patientid
> where csr.CodeSysID in (16,33)
> ) v
> where v.rang = 1;
> {code}
> 2018-05-02 14:03:56,206 ERROR [org.teiid.PROCESSOR] (Worker4_QueryProcessorQueue142) MPLUURNpwXk3 TEIID30019 Unexpected exception for request MPLUURNpwXk3.36: org.teiid.core.TeiidComponentException: TEIID30328 Unable to evaluate ROW_NUMBER() OVER (PARTITION BY ci.PatientID, ci.CodeID ORDER BY ci.EnterTime): No value was available
> at org.teiid.query.util.CommandContext.getFromContext(CommandContext.java:519)
> at org.teiid.query.eval.Evaluator.internalEvaluate(Evaluator.java:732)
> at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:707)
> at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:331)
> at org.teiid.query.eval.Evaluator.internalEvaluateTVL(Evaluator.java:185)
> at org.teiid.query.eval.Evaluator.evaluateTVL(Evaluator.java:174)
> at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:168)
> at org.teiid.query.processor.relational.SelectNode.nextBatchDirect(SelectNode.java:106)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.query.processor.relational.SourceState.getTupleBuffer(SourceState.java:244)
> at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.loadLeft(EnhancedSortMergeJoinStrategy.java:227)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirectInternal(JoinNode.java:228)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:200)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.query.processor.relational.SourceState.getTupleBuffer(SourceState.java:244)
> at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.loadLeft(EnhancedSortMergeJoinStrategy.java:227)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirectInternal(JoinNode.java:228)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:200)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.ProjectIntoNode.nextBatchDirect(ProjectIntoNode.java:140)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:141)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:111)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:480)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:350)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:47)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:276)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:277)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:115)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:206)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> When I only execute the query itself then the results are shown without any error.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-5335) "No value was available" in ROW_NUMBER while inserting in foreign temporary table
by Bram Gadeyne (JIRA)
[ https://issues.jboss.org/browse/TEIID-5335?page=com.atlassian.jira.plugin... ]
Bram Gadeyne commented on TEIID-5335:
-------------------------------------
I can confirm this is resolved in 10.3
> "No value was available" in ROW_NUMBER while inserting in foreign temporary table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-5335
> URL: https://issues.jboss.org/browse/TEIID-5335
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 10.2.1
> Reporter: Bram Gadeyne
> Assignee: Steven Hawkins
> Fix For: 10.3, 10.2.2
>
> Attachments: TEIID-5335.debugplan.txt
>
>
> while executing the following query the following error occurs:
> {code:sql}
> insert into rep149_variables (patientid,variableid,scoretime,varvalue)
> select patientid, code, entertime, 1 as varvalue
> from (
> select cr.code, ci.patientid, ci.entertime, row_number() over(partition by ci.patientid, ci.codeid order by ci.entertime) as rang
> from izisprod.S_CodeSystemRef csr
> join izisprod.S_CodeGroupRef cgr on cgr.CodeSysID = csr.CodeSysID
> join izisprod.S_CodeRef cr on cr.GroupID = cgr.GroupID and cr.code not in ('HK_GEEN','MZ_GEEN','zMG_fout')
> join iziswh.P_CodedItem ci on ci.CodeID = cr.CodeID and ci.ItemStatus = 0
> join rep149_cohort c on c.patientid = ci.patientid
> where csr.CodeSysID in (16,33)
> ) v
> where v.rang = 1;
> {code}
> 2018-05-02 14:03:56,206 ERROR [org.teiid.PROCESSOR] (Worker4_QueryProcessorQueue142) MPLUURNpwXk3 TEIID30019 Unexpected exception for request MPLUURNpwXk3.36: org.teiid.core.TeiidComponentException: TEIID30328 Unable to evaluate ROW_NUMBER() OVER (PARTITION BY ci.PatientID, ci.CodeID ORDER BY ci.EnterTime): No value was available
> at org.teiid.query.util.CommandContext.getFromContext(CommandContext.java:519)
> at org.teiid.query.eval.Evaluator.internalEvaluate(Evaluator.java:732)
> at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:707)
> at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:331)
> at org.teiid.query.eval.Evaluator.internalEvaluateTVL(Evaluator.java:185)
> at org.teiid.query.eval.Evaluator.evaluateTVL(Evaluator.java:174)
> at org.teiid.query.eval.Evaluator.evaluate(Evaluator.java:168)
> at org.teiid.query.processor.relational.SelectNode.nextBatchDirect(SelectNode.java:106)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.query.processor.relational.SourceState.getTupleBuffer(SourceState.java:244)
> at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.loadLeft(EnhancedSortMergeJoinStrategy.java:227)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirectInternal(JoinNode.java:228)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:200)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.query.processor.relational.SourceState.getTupleBuffer(SourceState.java:244)
> at org.teiid.query.processor.relational.EnhancedSortMergeJoinStrategy.loadLeft(EnhancedSortMergeJoinStrategy.java:227)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirectInternal(JoinNode.java:228)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:200)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.ProjectIntoNode.nextBatchDirect(ProjectIntoNode.java:140)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:141)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:111)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:480)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:350)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:47)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:276)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:277)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:115)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:206)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> When I only execute the query itself then the results are shown without any error.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-5336) Improve TEIID-5253
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5336?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-5336.
-----------------------------------
Resolution: Done
Added the secondary services as dependencies of the vdb service rather than running the finisheddeployment method when adding the listener.
> Improve TEIID-5253
> -------------------
>
> Key: TEIID-5336
> URL: https://issues.jboss.org/browse/TEIID-5336
> Project: Teiid
> Issue Type: Quality Risk
> Components: Server
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Fix For: 10.3, 10.1.4, 10.2.2
>
>
> The fix for TEIID-5253 still allows for a narrow chance of the resteasy and materializationmanager listeners being run twice. We can improve upon this by making these services required for the vdbservice.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-4520) Support for Exasol Connector
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-4520?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-4520:
-------------------------------------
[~rkorytkowski] When I develop a translator most of the time I use unit tests. I also write embedded Teiid based integration tests if I need to see what kind of queries that Teiid is sending to the translator. Typically these are easier to understand for me, as Teiid rewrites/expands sometimes, but in both situations, the source is a dummy or nonexistent. This will only help to see if you are generating the right queries or not.
The real test is with source, where you could write yourself a embedded test, or I often resort to deploy a vdb and keep refreshing the translator jar and use SquirreL to test.
> Support for Exasol Connector
> ----------------------------
>
> Key: TEIID-4520
> URL: https://issues.jboss.org/browse/TEIID-4520
> Project: Teiid
> Issue Type: Feature Request
> Components: Misc. Connectors
> Affects Versions: 9.x
> Reporter: Van Halbert
> Assignee: Andrej Šmigala
> Fix For: 10.x, Open To Community
>
>
> Requesting support for Exasol Connector
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-4520) Support for Exasol Connector
by Rafal Korytkowski (JIRA)
[ https://issues.jboss.org/browse/TEIID-4520?page=com.atlassian.jira.plugin... ]
Rafal Korytkowski edited comment on TEIID-4520 at 5/4/18 10:19 AM:
-------------------------------------------------------------------
Just an update that I was able to modify whipper-tests to run them against an existing Wildfly server with the new Exasol translator. There are 3517 passing and 366 failing tests for the Exasol translator when comparing results of test queries to mysql55 results. Some most frequent failures are in:
order_ascending_multiple_columns, success: 117, failing: 108
order_descending_multiple_columns, success: 118, failing: 108
order_mixed, success: 8, failing: 34
join_differrent_column_types, success: 451, failing: 29
...
I'll be looking into the failures to see, if they are actual bugs in a translator or supported differently by exasol.
was (Author: rkorytkowski):
Just an update that I was able to modify whipper-tests to run them against an existing Wildfly server. There are 3517 passing and 366 failing tests when comparing results of test queries to mysql55 results. Some most frequent failures are in:
order_ascending_multiple_columns, success: 117, failing: 108
order_descending_multiple_columns, success: 118, failing: 108
order_mixed, success: 8, failing: 34
join_differrent_column_types, success: 451, failing: 29
...
I'll be looking into the failures to see, if they are actual bugs in a translator or supported differently by exasol.
> Support for Exasol Connector
> ----------------------------
>
> Key: TEIID-4520
> URL: https://issues.jboss.org/browse/TEIID-4520
> Project: Teiid
> Issue Type: Feature Request
> Components: Misc. Connectors
> Affects Versions: 9.x
> Reporter: Van Halbert
> Assignee: Andrej Šmigala
> Fix For: 10.x, Open To Community
>
>
> Requesting support for Exasol Connector
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months
[JBoss JIRA] (TEIID-4520) Support for Exasol Connector
by Rafal Korytkowski (JIRA)
[ https://issues.jboss.org/browse/TEIID-4520?page=com.atlassian.jira.plugin... ]
Rafal Korytkowski commented on TEIID-4520:
------------------------------------------
Just an update that I was able to modify whipper-tests to run them against an existing Wildfly server. There are 3517 passing and 366 failing tests when comparing results of test queries to mysql55 results. Some most frequent failures are in:
order_ascending_multiple_columns, success: 117, failing: 108
order_descending_multiple_columns, success: 118, failing: 108
order_mixed, success: 8, failing: 34
join_differrent_column_types, success: 451, failing: 29
...
I'll be looking into the failures to see, if they are actual bugs in a translator or supported differently by exasol.
> Support for Exasol Connector
> ----------------------------
>
> Key: TEIID-4520
> URL: https://issues.jboss.org/browse/TEIID-4520
> Project: Teiid
> Issue Type: Feature Request
> Components: Misc. Connectors
> Affects Versions: 9.x
> Reporter: Van Halbert
> Assignee: Andrej Šmigala
> Fix For: 10.x, Open To Community
>
>
> Requesting support for Exasol Connector
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 11 months