[JBoss JIRA] (TEIID-5285) Add high-level feature for redirection of updates
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5285?page=com.atlassian.jira.plugin... ]
Ramesh Reddy edited comment on TEIID-5285 at 7/25/18 12:48 PM:
---------------------------------------------------------------
Yes, we should. Overall since JPA does the operations at the scope of single row most times, I am hoping this is not going to be a bigger issue. Also since we are projecting this as the testing feature may be this feature outweighs the degradation?
was (Author: rareddy):
Yes, we should. Overall since JPA does the operations at the scope of single row most times, I am hoping this is not going to be a bigger issue.
> Add high-level feature for redirection of updates
> -------------------------------------------------
>
> Key: TEIID-5285
> URL: https://issues.jboss.org/browse/TEIID-5285
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine, Teiid Spring Boot
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Fix For: 11.x
>
> Attachments: redirection-vdb.xml
>
>
> In microservices testing it is desirable to test against production/live data but not commit any updates. We should offer a simple solution that can defined by extension metadata and enabled/disabled by a feature flag. We may need to make simplifying assumptions about the scope (per session, per application, etc.) and durability of the updates.
> Under the covers this will be achieved by using views, update triggers, and a store for the updates and when not enabled the expectation is that all operations should pass through. However the application will be limited to using Teiid SQL and will be required to use the Teiid or pg driver, or Teiid spring boot.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5285) Add high-level feature for redirection of updates
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5285?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-5285:
-------------------------------------
Yes, we should. Overall since JPA does the operations at the scope of single row most times, I am hoping this is not going to be a bigger issue.
> Add high-level feature for redirection of updates
> -------------------------------------------------
>
> Key: TEIID-5285
> URL: https://issues.jboss.org/browse/TEIID-5285
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine, Teiid Spring Boot
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Fix For: 11.x
>
> Attachments: redirection-vdb.xml
>
>
> In microservices testing it is desirable to test against production/live data but not commit any updates. We should offer a simple solution that can defined by extension metadata and enabled/disabled by a feature flag. We may need to make simplifying assumptions about the scope (per session, per application, etc.) and durability of the updates.
> Under the covers this will be achieved by using views, update triggers, and a store for the updates and when not enabled the expectation is that all operations should pass through. However the application will be limited to using Teiid SQL and will be required to use the Teiid or pg driver, or Teiid spring boot.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5285) Add high-level feature for redirection of updates
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5285?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5285:
---------------------------------------
We'll also need to poke around at the performance implications. With moderate or large datasets try to show how much overhead to expect.
> Add high-level feature for redirection of updates
> -------------------------------------------------
>
> Key: TEIID-5285
> URL: https://issues.jboss.org/browse/TEIID-5285
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine, Teiid Spring Boot
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Fix For: 11.x
>
> Attachments: redirection-vdb.xml
>
>
> In microservices testing it is desirable to test against production/live data but not commit any updates. We should offer a simple solution that can defined by extension metadata and enabled/disabled by a feature flag. We may need to make simplifying assumptions about the scope (per session, per application, etc.) and durability of the updates.
> Under the covers this will be achieved by using views, update triggers, and a store for the updates and when not enabled the expectation is that all operations should pass through. However the application will be limited to using Teiid SQL and will be required to use the Teiid or pg driver, or Teiid spring boot.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5285) Add high-level feature for redirection of updates
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5285?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-5285:
-------------------------------------
[~shawkins] Updated the generated VDB based on current status. The original DB schema for it is
{code}
DROP TABLE IF EXISTS ORDERS;
DROP TABLE IF EXISTS CUSTOMER;
CREATE TABLE CUSTOMER
(
ID bigint,
SSN char(25),
NAME varchar(64),
CONSTRAINT CUSTOMER_PK PRIMARY KEY(ID)
);
DROP TABLE IF EXISTS ORDERS;
CREATE TABLE ORDERS
(
ID bigint,
CUST_ID bigint,
orderdate date,
CONSTRAINT ORDER_PK PRIMARY KEY(ID),
CONSTRAINT CUSTOMER_FK FOREIGN KEY (CUST_ID) REFERENCES CUSTOMER (ID)
);
CREATE SEQUENCE IF NOT EXISTS customer_seq START WITH 200 INCREMENT BY 1;
CREATE SEQUENCE IF NOT EXISTS order_seq START WITH 200 INCREMENT BY 1;
{code}
Take look and let's figure out what modifications should/needs be done.
> Add high-level feature for redirection of updates
> -------------------------------------------------
>
> Key: TEIID-5285
> URL: https://issues.jboss.org/browse/TEIID-5285
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine, Teiid Spring Boot
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Fix For: 11.x
>
> Attachments: redirection-vdb.xml
>
>
> In microservices testing it is desirable to test against production/live data but not commit any updates. We should offer a simple solution that can defined by extension metadata and enabled/disabled by a feature flag. We may need to make simplifying assumptions about the scope (per session, per application, etc.) and durability of the updates.
> Under the covers this will be achieved by using views, update triggers, and a store for the updates and when not enabled the expectation is that all operations should pass through. However the application will be limited to using Teiid SQL and will be required to use the Teiid or pg driver, or Teiid spring boot.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5285) Add high-level feature for redirection of updates
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5285?page=com.atlassian.jira.plugin... ]
Ramesh Reddy updated TEIID-5285:
--------------------------------
Attachment: redirection-vdb.xml
> Add high-level feature for redirection of updates
> -------------------------------------------------
>
> Key: TEIID-5285
> URL: https://issues.jboss.org/browse/TEIID-5285
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine, Teiid Spring Boot
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Fix For: 11.x
>
> Attachments: redirection-vdb.xml
>
>
> In microservices testing it is desirable to test against production/live data but not commit any updates. We should offer a simple solution that can defined by extension metadata and enabled/disabled by a feature flag. We may need to make simplifying assumptions about the scope (per session, per application, etc.) and durability of the updates.
> Under the covers this will be achieved by using views, update triggers, and a store for the updates and when not enabled the expectation is that all operations should pass through. However the application will be limited to using Teiid SQL and will be required to use the Teiid or pg driver, or Teiid spring boot.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5285) Add high-level feature for redirection of updates
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5285?page=com.atlassian.jira.plugin... ]
Ramesh Reddy updated TEIID-5285:
--------------------------------
Attachment: (was: redirection-vdb.xml)
> Add high-level feature for redirection of updates
> -------------------------------------------------
>
> Key: TEIID-5285
> URL: https://issues.jboss.org/browse/TEIID-5285
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine, Teiid Spring Boot
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Fix For: 11.x
>
>
> In microservices testing it is desirable to test against production/live data but not commit any updates. We should offer a simple solution that can defined by extension metadata and enabled/disabled by a feature flag. We may need to make simplifying assumptions about the scope (per session, per application, etc.) and durability of the updates.
> Under the covers this will be achieved by using views, update triggers, and a store for the updates and when not enabled the expectation is that all operations should pass through. However the application will be limited to using Teiid SQL and will be required to use the Teiid or pg driver, or Teiid spring boot.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5363) SimpleDB connector not quoting table names in internal Select queries
by Pranav K (JIRA)
[ https://issues.jboss.org/browse/TEIID-5363?page=com.atlassian.jira.plugin... ]
Pranav K commented on TEIID-5363:
---------------------------------
Actually there is something else, the data is coming up as blank. Only the standard itemName field is coming populated in the output.
A little further ahead in the query execution flow when SimpleDBQueryExecution.next() is called, it calls buildRow that further calls createAttributeMap; here the map does not contain quoted values (it does not unquote while checking) therefore the map lookup on line 113 [row.add(SimpleDBDataTypeManager.convertFromSimpleDBType(valueMap.get(columnName), expectedColumnTypes[i]))] fails, and hence no data is returned.
> SimpleDB connector not quoting table names in internal Select queries
> ---------------------------------------------------------------------
>
> Key: TEIID-5363
> URL: https://issues.jboss.org/browse/TEIID-5363
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Reporter: Pranav K
> Assignee: Steven Hawkins
> Fix For: 11.0, 10.3.2
>
>
> Facing an issue while querying the Simple DB connector for a specific type of tables - the tables that contain a hyphen in the name.
> According to the SimpleDB documentation:
> Attribute and domain names may appear without quotes if they contain only letters, numbers, underscores (_), or dollar symbols ($) and do not start with a number. You must quote all other attribute and domain names with the backtick (`).
> (https://docs.aws.amazon.com/AmazonSimpleDB/latest/DeveloperGuide/QuotingR...)
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5432) View type resolving does not keep domain types
by Steven Hawkins (JIRA)
Steven Hawkins created TEIID-5432:
-------------------------------------
Summary: View type resolving does not keep domain types
Key: TEIID-5432
URL: https://issues.jboss.org/browse/TEIID-5432
Project: Teiid
Issue Type: Bug
Components: Query Engine
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Fix For: 11.x
A query expression defining a view using domain types will have those types converted to builtin when the types are omitted from the view definition:
create view v as select domain_type_col from x;
will report the column for v as the base type.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months
[JBoss JIRA] (TEIID-5430) Closing Teiid JDBC connection is delayed 5 seconds
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5430?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-5430.
-----------------------------------
Fix Version/s: 11.1
Resolution: Done
The change is to use a much smaller wait time instead of the 5 seconds. At worst this will cause additional logs from sessions being implicit cleaned up rather than explicitly closed.
> Closing Teiid JDBC connection is delayed 5 seconds
> --------------------------------------------------
>
> Key: TEIID-5430
> URL: https://issues.jboss.org/browse/TEIID-5430
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Driver
> Affects Versions: 8.12.13.6_4
> Reporter: Hiroki Daicho
> Assignee: Steven Hawkins
> Fix For: 11.1
>
> Attachments: JDBCClient.java
>
>
> Teiid JDBC Driver waits 5 seconds during closing connection when the client can not reach teiid server.
> If many connections are pooling by the client as a Datasource, it takes more time the closing all connections.
> e.g. if the datasource has 50 connections, the close time would be 5 seconds * 50.
> [1] is the stacktrace whie the connection is closing with the delay.
> When closing connection, teiid JDBC waits server response by Future#get() with timeout of 5 seconds.
> So, it would be waiting for the time if the socket doesn't receive any response.
> [1] Stacktrace when the connection waits 5 seconds.
> {code}
> "main" #1 prio=5 os_prio=0 tid=0x00007f5b1c009000 nid=0x707b runnable [0x00007f5b238ac000]
> java.lang.Thread.State: RUNNABLE
> at java.net.SocketInputStream.socketRead0(Native Method)
> at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
> at java.net.SocketInputStream.read(SocketInputStream.java:171)
> at java.net.SocketInputStream.read(SocketInputStream.java:141)
> at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
> at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
> - locked <0x000000071c98cad0> (a org.teiid.core.util.AccessibleBufferedInputStream)
> at java.io.DataInputStream.readInt(DataInputStream.java:387)
> at org.teiid.netty.handler.codec.serialization.ObjectDecoderInputStream.readObjectOverride(ObjectDecoderInputStream.java:97)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:416)
> at org.teiid.net.socket.OioOjbectChannelFactory$OioObjectChannel.read(OioOjbectChannelFactory.java:117)
> at org.teiid.net.socket.SocketServerInstanceImpl.read(SocketServerInstanceImpl.java:308)
> at org.teiid.net.socket.SocketServerInstanceImpl$RemoteInvocationHandler$1.get(SocketServerInstanceImpl.java:411)
> at org.teiid.net.socket.SocketServerConnection.logoff(SocketServerConnection.java:331)
> at org.teiid.net.socket.SocketServerConnection.close(SocketServerConnection.java:306)
> - locked <0x000000071c51bb48> (a org.teiid.net.socket.SocketServerConnection)
> at org.teiid.jdbc.ConnectionImpl.close(ConnectionImpl.java:282)
> at ClientMain.invoke(ClientMain.java:83)
> at ClientMain.main(ClientMain.java:30)
> {code}
> [2]
> https://github.com/teiid/teiid/blob/master/client/src/main/java/org/teiid...
> {code}
> private void logoff() {
> disconnect();
> try {
> //make a best effort to send the logoff
> Future<?> writeFuture = this.serverInstance.getService(ILogon.class).logoff();
> writeFuture.get(5000, TimeUnit.MILLISECONDS);
> } catch (Exception e) {
> //ignore
> }
> closeServerInstance();
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 5 months