[JBoss JIRA] (TEIID-4877) Boolean syntax is broken on pg 9.5 data sources
by dalex dalex (JIRA)
[ https://issues.jboss.org/browse/TEIID-4877?page=com.atlassian.jira.plugin... ]
dalex dalex commented on TEIID-4877:
------------------------------------
[~shawkins] thx a lot for the quick fix.
> Boolean syntax is broken on pg 9.5 data sources
> -----------------------------------------------
>
> Key: TEIID-4877
> URL: https://issues.jboss.org/browse/TEIID-4877
> Project: Teiid
> Issue Type: Bug
> Components: Grammar, Misc. Connectors, Query Engine
> Affects Versions: 9.0.3
> Environment: teiid-9.0.3 on WildFly Full 9.0.2.Final (WildFly Core 1.0.2.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Priority: Blocker
> Fix For: 9.3, 9.1.5, 9.2.3
>
>
> Running the following query using test_pg as a PostgreSQL data source working on 9.5 version:
> {code:sql}
> with mytab as
> (
> select d>2 as col1
> FROM "test_pg.test_d"
> )
> select * from mytab where col1 = true ;;
> {code}
> will fail with the following error message:
> {code}
> 2017-04-27 16:04:50,560 WARN [org.teiid.CONNECTOR] (Worker1_QueryProcessorQueue6) 94Wi2JTG/lCK Connector worker process failed for atomic-request=94Wi2JTG/lCK.0.0.0: org.teiid.trans
> lator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: SELECT g_0."d" > 2 AS c_0 FROM "public"."test_d" AS g_0 WHERE g_0."
> d" > 2 = TRUE LIMIT 100]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:365)
> 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.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy56.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
> 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)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: org.postgresql.util.PSQLException: ОШИБКА: ошибка синтаксиса (примерное положение: "=")
> Позиция: 75
> 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:504)
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:123)
> ... 18 more
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months
[JBoss JIRA] (TEIID-4863) Run teiid embedded via Wildfly Swarm and Spring Boot
by Kylin Soong (JIRA)
[ https://issues.jboss.org/browse/TEIID-4863?page=com.atlassian.jira.plugin... ]
Kylin Soong edited comment on TEIID-4863 at 4/28/17 2:11 AM:
-------------------------------------------------------------
h3. We already have a teiid fraction in swarm, why need develop another for teiid embedded?
Current swarm-teiid are followed with javaee fractions, which mainly focus on reconstructing WildFly to microservice type applications, smoothly migrating application from WildFly/JBoss, etc, the config-api are involved and increased redundancy, but we have to keep/maintain it, a class with main method is necessary to setup connectors/translators and deploy vdb.
Develops a swarm-teiid-embedded wrapped upon teiid-embedded will not depend on config-api, a main method class is optional, it will be more microservice way, it should support
* Auto-detect connectors/translators (the auto detect functionanity be well used in both Spring boot and WildFly-swarm, eg, if class path have a vendor of jdbc driver, the revelent datasource be setted up, if class path has jaxrs libries, the rest releated resource be init)
* Support .yml configuration. Current, most of Spring boot and WildFly-swarm application need a main() method as a startup entrypoint, but the .yml is degingned for replece the Main, there already have some implements in Swarm and spring boot.
For example, to develop a Data Virtualization Platform, only add connectors/translators dependencies and vdb.xml, no main() method class, and packaged these with Swarm/Docker/kubernetes related Toolset plugin to a runnable jar, run like
{code}
java -jar sample-swarm.jar some-config.yml
{code}
then a embedded server started with connectors/translators installed, VDB deployed. The some-config.yml may like
{code}
swarm:
connector:
file:
parentDirectory: /path/to/data
translator:
jdbc:
file:
{code}
h3. Have a detailed work plan or step-by-step/milestone-to-milestone to-do list?
No, still need some more reserch and estimation to make one.
h3. What's the relations, between support teiid embedded in Spring boot and WildFly swarm?
I think the work need to do in swarm are almost similar in Spring boot, so finish one, the other is just follow up.
h3. Links
[1] All WildFly Fractions - https://github.com/wildfly-swarm/wildfly-swarm/tree/master/fractions
[2] Teiid Config API - https://github.com/wildfly-swarm/teiid-config-api
[3] An example for auto-detect datasources and rest resources - https://github.com/wildfly-swarm/wildfly-swarm-examples/tree/master/datas...
was (Author: kylin):
h3. We already have a teiid fraction in swarm, why need develop another for teiid embedded?
Current swarm-teiid are followed with javaee fractions, which mainly focus on reconstructing WildFly to microservice type applications, smoothly migrating application from WildFly/JBoss, etc, the config-api are involved and increased redundancy, but we have to keep/maintain it, a class with main method is necessary to setup connectors/translators and deploy vdb.
Develops a swarm-teiid-embedded wrapped upon teiid-embedded will not depend on config-api, a main method class is optional, it will be more microservice way, it should support
* Auto-detect connectors/translators (the auto detect functionanity be well used in both Spring boot and WildFly-swarm, eg, if class path have a vendor of jdbc driver, the revelent datasource be setted up, if class path has jaxrs libries, the rest releated resource be init)
* Support .yml configuration. Current, most of Spring boot and WildFly-swarm application need a main() method as a startup entrypoint, but the .yml is degingned for replece the Main, there already have some implements in Swarm and spring boot.
For example, to develop a Data Virtualization Platform, only add connectors/translators dependencies and vdb.xml, no main() method class, and packaged these with Swarm/Docker/kubernetes related Toolset plugin to a runnable jar, run like
{note}
java -jar sample-swarm.jar some-config.yml
{note}
then a embedded server started with connectors/translators installed, VDB deployed. The some-config.yml may like
{code}
swarm:
connector:
file:
parentDirectory: /path/to/data
translator:
jdbc:
file:
{code}
h3. Have a detailed work plan or step-by-step/milestone-to-milestone to-do list?
No, still need some more reserch and estimation to make one.
h3. What's the relations, between support teiid embedded in Spring boot and WildFly swarm?
I think the work need to do in swarm are almost similar in Spring boot, so finish one, the other is just follow up.
h3. Links
[1] All WildFly Fractions - https://github.com/wildfly-swarm/wildfly-swarm/tree/master/fractions
[2] Teiid Config API - https://github.com/wildfly-swarm/teiid-config-api
[3] An example for auto-detect datasources and rest resources - https://github.com/wildfly-swarm/wildfly-swarm-examples/tree/master/datas...
> Run teiid embedded via Wildfly Swarm and Spring Boot
> ----------------------------------------------------
>
> Key: TEIID-4863
> URL: https://issues.jboss.org/browse/TEIID-4863
> Project: Teiid
> Issue Type: Feature Request
> Components: Embedded
> Affects Versions: 10.x
> Reporter: Kylin Soong
> Assignee: Kylin Soong
> Fix For: 10.x
>
>
> WildFly Swarm can use simple pojo to integrate framework, which compatible with EmbeddedConfiguration, actually this is encouraged way.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months
[JBoss JIRA] (TEIID-4863) Run teiid embedded via Wildfly Swarm and Spring Boot
by Kylin Soong (JIRA)
[ https://issues.jboss.org/browse/TEIID-4863?page=com.atlassian.jira.plugin... ]
Kylin Soong commented on TEIID-4863:
------------------------------------
h3. We already have a teiid fraction in swarm, why need develop another for teiid embedded?
Current swarm-teiid are followed with javaee fractions, which mainly focus on reconstructing WildFly to microservice type applications, smoothly migrating application from WildFly/JBoss, etc, the config-api are involved and increased redundancy, but we have to keep/maintain it, a class with main method is necessary to setup connectors/translators and deploy vdb.
Develops a swarm-teiid-embedded wrapped upon teiid-embedded will not depend on config-api, a main method class is optional, it will be more microservice way, it should support
* Auto-detect connectors/translators (the auto detect functionanity be well used in both Spring boot and WildFly-swarm, eg, if class path have a vendor of jdbc driver, the revelent datasource be setted up, if class path has jaxrs libries, the rest releated resource be init)
* Support .yml configuration. Current, most of Spring boot and WildFly-swarm application need a main() method as a startup entrypoint, but the .yml is degingned for replece the Main, there already have some implements in Swarm and spring boot.
For example, to develop a Data Virtualization Platform, only add connectors/translators dependencies and vdb.xml, no main() method class, and packaged these with Swarm/Docker/kubernetes related Toolset plugin to a runnable jar, run like
{note}
java -jar sample-swarm.jar some-config.yml
{note}
then a embedded server started with connectors/translators installed, VDB deployed. The some-config.yml may like
{code}
swarm:
connector:
file:
parentDirectory: /path/to/data
translator:
jdbc:
file:
{code}
h3. Have a detailed work plan or step-by-step/milestone-to-milestone to-do list?
No, still need some more reserch and estimation to make one.
h3. What's the relations, between support teiid embedded in Spring boot and WildFly swarm?
I think the work need to do in swarm are almost similar in Spring boot, so finish one, the other is just follow up.
h3. Links
[1] All WildFly Fractions - https://github.com/wildfly-swarm/wildfly-swarm/tree/master/fractions
[2] Teiid Config API - https://github.com/wildfly-swarm/teiid-config-api
[3] An example for auto-detect datasources and rest resources - https://github.com/wildfly-swarm/wildfly-swarm-examples/tree/master/datas...
> Run teiid embedded via Wildfly Swarm and Spring Boot
> ----------------------------------------------------
>
> Key: TEIID-4863
> URL: https://issues.jboss.org/browse/TEIID-4863
> Project: Teiid
> Issue Type: Feature Request
> Components: Embedded
> Affects Versions: 10.x
> Reporter: Kylin Soong
> Assignee: Kylin Soong
> Fix For: 10.x
>
>
> WildFly Swarm can use simple pojo to integrate framework, which compatible with EmbeddedConfiguration, actually this is encouraged way.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months
[JBoss JIRA] (TEIID-4879) Create JDG document for the legacy and JDG as an existing data source
by Van Halbert (JIRA)
Van Halbert created TEIID-4879:
----------------------------------
Summary: Create JDG document for the legacy and JDG as an existing data source
Key: TEIID-4879
URL: https://issues.jboss.org/browse/TEIID-4879
Project: Teiid
Issue Type: Task
Components: Documentation
Affects Versions: 9.3
Reporter: Van Halbert
Assignee: Steven Hawkins
The legacy JDG documents has been replaced based on the new translator. The legacy support JDG as an existing data source (and the other legacy options) will need to continue to have documentation until they are no long an option.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months
[JBoss JIRA] (TEIID-4878) Upgrade accumulo and solr libraries
by Steven Hawkins (JIRA)
Steven Hawkins created TEIID-4878:
-------------------------------------
Summary: Upgrade accumulo and solr libraries
Key: TEIID-4878
URL: https://issues.jboss.org/browse/TEIID-4878
Project: Teiid
Issue Type: Task
Components: Server
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Fix For: 9.3
Related to TEIID-4572 the solr version should be upgraded. To keep the common version of zookeeper however, we also need to upgrade accumulo.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months
[JBoss JIRA] (TEIID-4877) Boolean syntax is broken on pg 9.5 data sources
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4877?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-4877:
---------------------------------------
I should add that rewrite logic may be appropriate here as well, but it's actually quite a few cases to cover given the comparison operator and the right hand value (literal or expression). So I didn't add anything at this time.
> Boolean syntax is broken on pg 9.5 data sources
> -----------------------------------------------
>
> Key: TEIID-4877
> URL: https://issues.jboss.org/browse/TEIID-4877
> Project: Teiid
> Issue Type: Bug
> Components: Grammar, Misc. Connectors, Query Engine
> Affects Versions: 9.0.3
> Environment: teiid-9.0.3 on WildFly Full 9.0.2.Final (WildFly Core 1.0.2.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Priority: Blocker
> Fix For: 9.3, 9.1.5, 9.2.3
>
>
> Running the following query using test_pg as a PostgreSQL data source working on 9.5 version:
> {code:sql}
> with mytab as
> (
> select d>2 as col1
> FROM "test_pg.test_d"
> )
> select * from mytab where col1 = true ;;
> {code}
> will fail with the following error message:
> {code}
> 2017-04-27 16:04:50,560 WARN [org.teiid.CONNECTOR] (Worker1_QueryProcessorQueue6) 94Wi2JTG/lCK Connector worker process failed for atomic-request=94Wi2JTG/lCK.0.0.0: org.teiid.trans
> lator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: SELECT g_0."d" > 2 AS c_0 FROM "public"."test_d" AS g_0 WHERE g_0."
> d" > 2 = TRUE LIMIT 100]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:365)
> 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.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy56.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
> 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)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: org.postgresql.util.PSQLException: ОШИБКА: ошибка синтаксиса (примерное положение: "=")
> Позиция: 75
> 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:504)
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:123)
> ... 18 more
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months
[JBoss JIRA] (TEIID-4877) Boolean syntax is broken on pg 9.5 data sources
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4877?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-4877.
-----------------------------------
Resolution: Done
Added missing parens to the sql generating logic. This was always needed regardless of postgresql as the Teiid sql parser needed the parens as well.
A corresponding change may be needed on the designer side as well.
> Boolean syntax is broken on pg 9.5 data sources
> -----------------------------------------------
>
> Key: TEIID-4877
> URL: https://issues.jboss.org/browse/TEIID-4877
> Project: Teiid
> Issue Type: Bug
> Components: Grammar, Misc. Connectors, Query Engine
> Affects Versions: 9.0.3
> Environment: teiid-9.0.3 on WildFly Full 9.0.2.Final (WildFly Core 1.0.2.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Priority: Blocker
> Fix For: 9.3, 9.1.5, 9.2.3
>
>
> Running the following query using test_pg as a PostgreSQL data source working on 9.5 version:
> {code:sql}
> with mytab as
> (
> select d>2 as col1
> FROM "test_pg.test_d"
> )
> select * from mytab where col1 = true ;;
> {code}
> will fail with the following error message:
> {code}
> 2017-04-27 16:04:50,560 WARN [org.teiid.CONNECTOR] (Worker1_QueryProcessorQueue6) 94Wi2JTG/lCK Connector worker process failed for atomic-request=94Wi2JTG/lCK.0.0.0: org.teiid.trans
> lator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: SELECT g_0."d" > 2 AS c_0 FROM "public"."test_d" AS g_0 WHERE g_0."
> d" > 2 = TRUE LIMIT 100]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:365)
> 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.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy56.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
> 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)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: org.postgresql.util.PSQLException: ОШИБКА: ошибка синтаксиса (примерное положение: "=")
> Позиция: 75
> 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:504)
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:123)
> ... 18 more
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
7 years, 8 months