[JBoss JIRA] (TEIID-4797) Oracle: empty catalog messed up VDB schemas name
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4797?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-4797.
-----------------------------------
Resolution: Done
Added a check for an empty catalog.
> Oracle: empty catalog messed up VDB schemas name
> -------------------------------------------------
>
> Key: TEIID-4797
> URL: https://issues.jboss.org/browse/TEIID-4797
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 9.1.1
> Reporter: Ivan Chan
> Assignee: Steven Hawkins
> Fix For: 9.3, 9.2.1, 9.1.5
>
>
> I recently upgraded from Teiid 8.12.3 to version 9.1.1. And I found query transformation problem for oracle 12c.
>
> I have a simple query. See below:
>
> select "STORE_CITY"
> from "jasperserver_FOODMART"."STORE"
> limit 200001
>
> However, teiid version 9.1.1 transformed the query to
>
> Caused by: org.teiid.jdbc.TeiidSQLException: TEIID30504 1017993016: 1741 TEIID11008:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: SELECT c_0 FROM (SELECT g_0."STORE_CITY" AS c_0 FROM "FOODMART".""."STORE" g_0) WHERE ROWNUM <= 200001]
> at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:135)
> at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:71)
> at org.teiid.jdbc.StatementImpl.postReceiveResults(StatementImpl.java:723)
> at org.teiid.jdbc.StatementImpl.access$100(StatementImpl.java:65)
> at org.teiid.jdbc.StatementImpl$2.onCompletion(StatementImpl.java:561)
> at org.teiid.client.util.ResultsFuture.addCompletionListener(ResultsFuture.java:148)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:557)
> at org.teiid.jdbc.PreparedStatementImpl.executeQuery(PreparedStatementImpl.java:317)
> at org.teiid.jdbc.PreparedStatementImpl.executeQuery(PreparedStatementImpl.java:76)
> It looks like it's returning an empty string for the catalog. The code currently expects a non-null to indicate the package name.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (TEIID-4798) Support Full CRUD operations with SFDC Bulk API
by Van Halbert (JIRA)
Van Halbert created TEIID-4798:
----------------------------------
Summary: Support Full CRUD operations with SFDC Bulk API
Key: TEIID-4798
URL: https://issues.jboss.org/browse/TEIID-4798
Project: Teiid
Issue Type: Enhancement
Components: Misc. Connectors
Reporter: Van Halbert
Assignee: Steven Hawkins
Support Full CRUD support for SFDC Bulk API.
Based on other comments, the bulk update/delete are not currently enabled.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (TEIID-4793) Change of class loading no longer requires module dependencies
by Van Halbert (JIRA)
[ https://issues.jboss.org/browse/TEIID-4793?page=com.atlassian.jira.plugin... ]
Van Halbert commented on TEIID-4793:
------------------------------------
Yes, there is an upstream commit coming that include the support for JDG 7.1.
> Change of class loading no longer requires module dependencies
> --------------------------------------------------------------
>
> Key: TEIID-4793
> URL: https://issues.jboss.org/browse/TEIID-4793
> Project: Teiid
> Issue Type: Enhancement
> Components: JDG Connector
> Affects Versions: 9.3, 8.12.10.6_3
> Reporter: Van Halbert
> Assignee: Van Halbert
> Priority: Critical
> Fix For: 8.12.10.6_3
>
>
> With the latest changes to support username/password required code refactoring so that a new remoteCacheManager is configured for each connection. And with that, it appears that, with 1 more small change, the resource-adapter module dependency in the pojo is no longer needed for either use case: using pojo annotations or protobuf files.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (TEIID-4793) Change of class loading no longer requires module dependencies
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4793?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-4793:
---------------------------------------
Does this still need an upstream commit?
> Change of class loading no longer requires module dependencies
> --------------------------------------------------------------
>
> Key: TEIID-4793
> URL: https://issues.jboss.org/browse/TEIID-4793
> Project: Teiid
> Issue Type: Enhancement
> Components: JDG Connector
> Affects Versions: 9.3, 8.12.10.6_3
> Reporter: Van Halbert
> Assignee: Van Halbert
> Priority: Critical
> Fix For: 8.12.10.6_3
>
>
> With the latest changes to support username/password required code refactoring so that a new remoteCacheManager is configured for each connection. And with that, it appears that, with 1 more small change, the resource-adapter module dependency in the pojo is no longer needed for either use case: using pojo annotations or protobuf files.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (TEIID-4792) Unable to use WHERE clause against a JDG data source - ISPN000402: The type com.redhat.demo.sko.pojo.Call has no property named .....
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4792?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-4792:
----------------------------------
Component/s: JDG Connector
Fix Version/s: 9.3
> Unable to use WHERE clause against a JDG data source - ISPN000402: The type com.redhat.demo.sko.pojo.Call has no property named .....
> -------------------------------------------------------------------------------------------------------------------------------------
>
> Key: TEIID-4792
> URL: https://issues.jboss.org/browse/TEIID-4792
> Project: Teiid
> Issue Type: Bug
> Components: JDG Connector
> Environment: Mac OS
> JDV 6.3.4
> JDG 6.6.1
> JBDS 10.3.0 with JBDSIS 10.0.2
> Reporter: Cojan van Ballegooijen
> Assignee: Van Halbert
> Fix For: 9.3
>
> Attachments: Call_JDG_Module.zip, ChurnPrediction-vdb.xml, Contract_JDG_Module.zip, Screen Shot 2017-03-01 at 16.32.19.png, module pojo.xml, module.xml
>
>
> SELECT * FROM Calls."Call" works as expected and returns all rows
> Adding a where clause
> SELECT * FROM Calls."Call" WHERE Calls."Call".Intlcalls > 0
> generate the following error:
> org.teiid.runtime.client.TeiidClientException: java.lang.RuntimeException: Remote org.teiid.core.TeiidException: org.hibernate.hql.ParsingException: ISPN000402: The type com.redhat.demo.sko.pojo.Call has no property named 'Intlmins'.
> Elapsed Time: 0 hr, 0 min, 0 sec, 191 ms.
> If I join two VBL together and run the join query it returns the same error.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (TEIID-4517) Add support for deleting child objects
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4517?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-4517:
----------------------------------
Priority: Major (was: Critical)
> Add support for deleting child objects
> --------------------------------------
>
> Key: TEIID-4517
> URL: https://issues.jboss.org/browse/TEIID-4517
> Project: Teiid
> Issue Type: Feature Request
> Components: JDG Connector
> Affects Versions: 8.12.7.6_3, 9.2
> Reporter: Jan Stastny
> Assignee: Van Halbert
> Fix For: 9.3
>
>
> Infinispan cache dsl translator currently doesn't support deleting child objects when using complex POJO classes.
> Example of complex POJO:
> {code:plain}
> package org.jboss.qe.jdg.remote.protobuf.complex;
> /* @Indexed */
> message Person {
>
> /* @IndexedField(index=true, store=false) */
> required int32 id = 1;
>
> /* @IndexedField */
> required string name = 2;
>
> /* @IndexedField */
> optional string email = 3;
>
> /* @IndexedField(index=true, store=false) */
> repeated PhoneNumber phones = 4;
> /* @Indexed */
> message Address {
>
> /* @IndexedField */
> required string Address = 1;
>
> /* @IndexedField(index=true, store=false) */
> required string City = 2;
>
> /* @IndexedField(index=true, store=false) */
> required string State = 3;
> }
> /* @IndexedField(index=true, store=false) */
> optional Address address = 5;
> }
>
> /* @Indexed */
> message PhoneNumber {
>
> /* @IndexedField */
> required string number = 1;
> }
> {code}
> Mapped metadata:
> {code:sql}
> CREATE FOREIGN TABLE Address (
> Address string NOT NULL PRIMARY KEY OPTIONS (NAMEINSOURCE 'address.Address', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> City string NOT NULL OPTIONS (NAMEINSOURCE 'address.City', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> State string NOT NULL OPTIONS (NAMEINSOURCE 'address.State', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SELECTABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'address')
> ) OPTIONS (UPDATABLE TRUE);
>
> CREATE FOREIGN TABLE Person (
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> name string NOT NULL OPTIONS (NAMEINSOURCE 'name', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> email string OPTIONS (NAMEINSOURCE 'email', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> CONSTRAINT PK_ID PRIMARY KEY(id)
> ) OPTIONS (UPDATABLE TRUE);
>
> CREATE FOREIGN TABLE PhoneNumber (
> number string NOT NULL PRIMARY KEY OPTIONS (NAMEINSOURCE 'phones.number', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SELECTABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'phones')
> ) OPTIONS (UPDATABLE TRUE);
> {code}
> Expected usage:
> {code:sql}
> DELETE FROM PhoneNumber WHERE id=3
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (TEIID-4516) Add support for updating child objects
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4516?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-4516:
----------------------------------
Priority: Major (was: Critical)
> Add support for updating child objects
> --------------------------------------
>
> Key: TEIID-4516
> URL: https://issues.jboss.org/browse/TEIID-4516
> Project: Teiid
> Issue Type: Feature Request
> Components: JDG Connector
> Affects Versions: 8.12.7.6_3, 9.2
> Reporter: Jan Stastny
> Assignee: Van Halbert
> Fix For: 9.3
>
>
> When using complex pojo with JDG 6.6, updating child tables doesn't do anything. It doesn't update the rows, but neither throws exception.
> The problem appears for both usages of JDG cache (annotated POJOs, protobuf+marshaller). I have following pojo structure:
> {code:plain}
> package org.jboss.qe.jdg.remote.protobuf.complex;
> /* @Indexed */
> message Person {
>
> /* @IndexedField(index=true, store=false) */
> required int32 id = 1;
>
> /* @IndexedField */
> required string name = 2;
>
> /* @IndexedField */
> optional string email = 3;
>
> /* @IndexedField(index=true, store=false) */
> repeated PhoneNumber phones = 4;
> /* @Indexed */
> message Address {
>
> /* @IndexedField */
> required string Address = 1;
>
> /* @IndexedField(index=true, store=false) */
> required string City = 2;
>
> /* @IndexedField(index=true, store=false) */
> required string State = 3;
> }
> /* @IndexedField(index=true, store=false) */
> optional Address address = 5;
> }
>
> /* @Indexed */
> message PhoneNumber {
>
> /* @IndexedField */
> required string number = 1;
> }
> {code}
> That is, one top-level POJO class Person, and two child POJO classes: Address(1-to-1) and PhoneNumber(1-to-N). Neither Address nor PhoneNumber tables could be updated. The DDL is following:
> {code:sql}
> CREATE FOREIGN TABLE Address (
> Address string NOT NULL PRIMARY KEY OPTIONS (NAMEINSOURCE 'address.Address', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> City string NOT NULL OPTIONS (NAMEINSOURCE 'address.City', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> State string NOT NULL OPTIONS (NAMEINSOURCE 'address.State', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SELECTABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'address')
> ) OPTIONS (UPDATABLE TRUE);
>
> CREATE FOREIGN TABLE Person (
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> name string NOT NULL OPTIONS (NAMEINSOURCE 'name', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> email string OPTIONS (NAMEINSOURCE 'email', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> CONSTRAINT PK_ID PRIMARY KEY(id)
> ) OPTIONS (UPDATABLE TRUE);
>
> CREATE FOREIGN TABLE PhoneNumber (
> number string NOT NULL PRIMARY KEY OPTIONS (NAMEINSOURCE 'phones.number', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SELECTABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'phones')
> ) OPTIONS (UPDATABLE TRUE);
> {code}
> INSERT queries to prepare data:
> {code:sql}
> INSERT INTO Person(id,name,email) VALUES (1,'name1','email1')
> INSERT INTO Address(id,Address,City,State) VALUES (1,'address1','city1','state1')
> INSERT INTO PhoneNumber(id, number) VALUES (1, '001234567')
> INSERT INTO PhoneNumber(id, number) VALUES (1, '001234568')
> {code}
> UPDATE queries and queries for checking results:
> * 1-to-1
> {code:sql}UPDATE Address SET city='newCity' WHERE id=1{code}
> {code:sql}SELECT * FROM Person,Address{code}
> * 1-to-n
> {code:sql}UPDATE PhoneNumber SET number='newNumber' WHERE id=1{code}
> {code:sql}SELECT * FROM Person,PhoneNumber{code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years