[JBoss JIRA] (TEIIDDES-1626) import update does not work
by luca gioppo (JIRA)
luca gioppo created TEIIDDES-1626:
-------------------------------------
Summary: import update does not work
Key: TEIIDDES-1626
URL: https://issues.jboss.org/browse/TEIIDDES-1626
Project: Teiid Designer
Issue Type: Bug
Components: Import/Export
Affects Versions: 8.1
Environment: Windows XP
Reporter: luca gioppo
Priority: Critical
I'm trying to update an existing model but even checking the Update )(if exixting model selected) the designer refuses to comply.
Is it correct?
I'm on 8.1.0.Beta2-v20130222-2027-B2190
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1623) validation problems with trim and concat used together.
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1623?page=com.atlassian.jira.plu... ]
Barry LaFond updated TEIIDDES-1623:
-----------------------------------
Fix Version/s: 7.7.3
> validation problems with trim and concat used together.
> -------------------------------------------------------
>
> Key: TEIIDDES-1623
> URL: https://issues.jboss.org/browse/TEIIDDES-1623
> Project: Teiid Designer
> Issue Type: Bug
> Components: Validation
> Affects Versions: 7.7
> Reporter: Johnathon Lee
> Assignee: Barry LaFond
> Fix For: 7.7.3, 8.1
>
> Attachments: Trimtest.zip
>
>
> Using the latest JBDS 5.0 and the attached simplified Model Project Set (Trimtest.zip).
> On the view model CCH_V.memmasV change the transformation to [1] and perform a Save/Validate. It will be rewritten to [2] and give a parsing error.
> [1]
> SELECT
> ltrim(Memb.LSTNAM) || ', ' || trim('foo') ||' '|| trim(Memb.MIDNAM) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
> [2]
> SELECT
> ((((ltrim(Memb.LSTNAM) || ', ') || trim( FROM )) || ' ') || trim( FROM Memb.MIDNAM)) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1623) validation problems with trim and concat used together.
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1623?page=com.atlassian.jira.plu... ]
Barry LaFond updated TEIIDDES-1623:
-----------------------------------
Fix Version/s: 8.1
> validation problems with trim and concat used together.
> -------------------------------------------------------
>
> Key: TEIIDDES-1623
> URL: https://issues.jboss.org/browse/TEIIDDES-1623
> Project: Teiid Designer
> Issue Type: Bug
> Components: Validation
> Affects Versions: 7.7
> Reporter: Johnathon Lee
> Assignee: Barry LaFond
> Fix For: 8.1
>
> Attachments: Trimtest.zip
>
>
> Using the latest JBDS 5.0 and the attached simplified Model Project Set (Trimtest.zip).
> On the view model CCH_V.memmasV change the transformation to [1] and perform a Save/Validate. It will be rewritten to [2] and give a parsing error.
> [1]
> SELECT
> ltrim(Memb.LSTNAM) || ', ' || trim('foo') ||' '|| trim(Memb.MIDNAM) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
> [2]
> SELECT
> ((((ltrim(Memb.LSTNAM) || ', ') || trim( FROM )) || ' ') || trim( FROM Memb.MIDNAM)) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1623) validation problems with trim and concat used together.
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1623?page=com.atlassian.jira.plu... ]
Barry LaFond commented on TEIIDDES-1623:
----------------------------------------
Fix is to insert the following if/else statement into *DisplayNodeFactory.constructDisplayNode()* method anywhere before the "instanceof LanguageObject" if check ...
7.7.x
{code}
else if( parentNode instanceof FunctionDisplayNode && obj instanceof Constant && ((Constant)obj).getValue() != null ) {
return new TextDisplayNode(parentNode, obj.toString());
}
{code}
8.1 Designer is a little different due to the multi-server SPI abstraction layer (i.e. IConstant vs Constant)
{code}
else if( parentNode instanceof FunctionDisplayNode && obj instanceof IConstant && ((IConstant)obj).getValue() != null ) {
return new TextDisplayNode(parentNode, obj.toString());
}
{code}
the obj.toString() will preserve the ' ' tic marks around the space
> validation problems with trim and concat used together.
> -------------------------------------------------------
>
> Key: TEIIDDES-1623
> URL: https://issues.jboss.org/browse/TEIIDDES-1623
> Project: Teiid Designer
> Issue Type: Bug
> Components: Validation
> Affects Versions: 7.7
> Reporter: Johnathon Lee
> Assignee: Barry LaFond
> Attachments: Trimtest.zip
>
>
> Using the latest JBDS 5.0 and the attached simplified Model Project Set (Trimtest.zip).
> On the view model CCH_V.memmasV change the transformation to [1] and perform a Save/Validate. It will be rewritten to [2] and give a parsing error.
> [1]
> SELECT
> ltrim(Memb.LSTNAM) || ', ' || trim('foo') ||' '|| trim(Memb.MIDNAM) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
> [2]
> SELECT
> ((((ltrim(Memb.LSTNAM) || ', ') || trim( FROM )) || ' ') || trim( FROM Memb.MIDNAM)) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1623) validation problems with trim and concat used together.
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1623?page=com.atlassian.jira.plu... ]
Barry LaFond reassigned TEIIDDES-1623:
--------------------------------------
Assignee: Barry LaFond
> validation problems with trim and concat used together.
> -------------------------------------------------------
>
> Key: TEIIDDES-1623
> URL: https://issues.jboss.org/browse/TEIIDDES-1623
> Project: Teiid Designer
> Issue Type: Bug
> Components: Validation
> Affects Versions: 7.7
> Reporter: Johnathon Lee
> Assignee: Barry LaFond
> Attachments: Trimtest.zip
>
>
> Using the latest JBDS 5.0 and the attached simplified Model Project Set (Trimtest.zip).
> On the view model CCH_V.memmasV change the transformation to [1] and perform a Save/Validate. It will be rewritten to [2] and give a parsing error.
> [1]
> SELECT
> ltrim(Memb.LSTNAM) || ', ' || trim('foo') ||' '|| trim(Memb.MIDNAM) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
> [2]
> SELECT
> ((((ltrim(Memb.LSTNAM) || ', ') || trim( FROM )) || ' ') || trim( FROM Memb.MIDNAM)) AS MEMBER_NAME
> FROM
> CCH.MEMMAS AS Memb
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1625) Unable to create JDBC connection to Teiid 8.3 Final from Designer
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1625?page=com.atlassian.jira.plu... ]
Steven Hawkins commented on TEIIDDES-1625:
------------------------------------------
> 3. the handshake is then written to the socketChannel, which I thought was transferred to the server.
Yes and that is the source of this issue. The server then does not know what the proper version of the client is.
> So I am suggesting rather than the client assuming the object is not wrapped as a SealedObject, a check should at least be added so that a ClassCastException can be avoided, eg. if (object instanceof SealedObject) in BasicCryptor.unsealObject
That could be done, but seems unnecessary as the only case in which that would happen is a misreported client version. There are also other places where the server is making decisions based upon the client version, such as with data serialization. So if you didn't fail here you would likely have failed later. If you want, you could log something for the server side to make sure that the client version reported looks somewhat like a version number that we expect.
> Unable to create JDBC connection to Teiid 8.3 Final from Designer
> -----------------------------------------------------------------
>
> Key: TEIIDDES-1625
> URL: https://issues.jboss.org/browse/TEIIDDES-1625
> Project: Teiid Designer
> Issue Type: Bug
> Reporter: Barry LaFond
> Assignee: Paul Richardson
> Fix For: 8.1
>
>
> Upgraded Teiid designer to 8.3 Final bits
> Tried to Preview a table and received following exception:
> !ENTRY org.teiid.designer.dqp.ui 4 0 2013-03-19 11:33:24.518
> !MESSAGE javax.crypto.SealedObject cannot be cast to org.teiid.client.security.LogonResult
> !STACK 0
> java.lang.ClassCastException: javax.crypto.SealedObject cannot be cast to org.teiid.client.security.LogonResult
> at sun.proxy.$Proxy27.logon(Unknown Source)
> at org.teiid.net.socket.SocketServerConnection.logon(SocketServerConnection.java:173)
> at org.teiid.net.socket.SocketServerConnection.selectServerInstance(SocketServerConnection.java:125)
> at org.teiid.net.socket.SocketServerConnection.<init>(SocketServerConnection.java:92)
> at org.teiid.net.socket.SocketServerConnectionFactory.getConnection(SocketServerConnectionFactory.java:312)
> at org.teiid.jdbc.SocketProfile.connect(SocketProfile.java:54)
> at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:107)
> at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:1)
> at org.teiid.datatools.connectivity.TeiidJDBCConnection.createConnection(TeiidJDBCConnection.java:83)
> at org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:105)
> at org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)
> at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:73)
> at org.teiid.datatools.connectivity.TeiidJDBCConnectionFactory.createConnection(TeiidJDBCConnectionFactory.java:23)
> at org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)
> at org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.getSqlConnection(PreviewDataWorker.java:621)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.internalRun(PreviewDataWorker.java:398)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.run(PreviewDataWorker.java:263)
> at org.teiid.designer.runtime.ui.preview.PreviewTableDataContextAction.run(PreviewTableDataContextAction.java:99)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1625) Unable to create JDBC connection to Teiid 8.3 Final from Designer
by Paul Richardson (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1625?page=com.atlassian.jira.plu... ]
Paul Richardson commented on TEIIDDES-1625:
-------------------------------------------
> I don't follow you here.
So I don't pretend to fully understand the flow but from what I see in SocketServerInstanceImpl.doHandshake():
1. handshake.getVersion() is called to set serverVersion which seems to remain client side. This value is taken from a serialized object hence is the correct 8.3.0.Final.
2. handshake.setVersion() is called, which resets handshake's version from the application.properties, which in designer's case ended up as ${project.version}
3. the handshake is then written to the socketChannel, which I thought was transferred to the server.
This process I concluded was responsible for the client sending messages without wrapping but receiving messages with wrapping. So I am suggesting rather than the client assuming the object is not wrapped as a SealedObject, a check should at least be added so that a ClassCastException can be avoided, eg. if (object instanceof SealedObject) in BasicCryptor.unsealObject.
> Unable to create JDBC connection to Teiid 8.3 Final from Designer
> -----------------------------------------------------------------
>
> Key: TEIIDDES-1625
> URL: https://issues.jboss.org/browse/TEIIDDES-1625
> Project: Teiid Designer
> Issue Type: Bug
> Reporter: Barry LaFond
> Assignee: Paul Richardson
> Fix For: 8.1
>
>
> Upgraded Teiid designer to 8.3 Final bits
> Tried to Preview a table and received following exception:
> !ENTRY org.teiid.designer.dqp.ui 4 0 2013-03-19 11:33:24.518
> !MESSAGE javax.crypto.SealedObject cannot be cast to org.teiid.client.security.LogonResult
> !STACK 0
> java.lang.ClassCastException: javax.crypto.SealedObject cannot be cast to org.teiid.client.security.LogonResult
> at sun.proxy.$Proxy27.logon(Unknown Source)
> at org.teiid.net.socket.SocketServerConnection.logon(SocketServerConnection.java:173)
> at org.teiid.net.socket.SocketServerConnection.selectServerInstance(SocketServerConnection.java:125)
> at org.teiid.net.socket.SocketServerConnection.<init>(SocketServerConnection.java:92)
> at org.teiid.net.socket.SocketServerConnectionFactory.getConnection(SocketServerConnectionFactory.java:312)
> at org.teiid.jdbc.SocketProfile.connect(SocketProfile.java:54)
> at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:107)
> at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:1)
> at org.teiid.datatools.connectivity.TeiidJDBCConnection.createConnection(TeiidJDBCConnection.java:83)
> at org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:105)
> at org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)
> at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:73)
> at org.teiid.datatools.connectivity.TeiidJDBCConnectionFactory.createConnection(TeiidJDBCConnectionFactory.java:23)
> at org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)
> at org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.getSqlConnection(PreviewDataWorker.java:621)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.internalRun(PreviewDataWorker.java:398)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.run(PreviewDataWorker.java:263)
> at org.teiid.designer.runtime.ui.preview.PreviewTableDataContextAction.run(PreviewTableDataContextAction.java:99)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years
[JBoss JIRA] (TEIIDDES-1625) Unable to create JDBC connection to Teiid 8.3 Final from Designer
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-1625?page=com.atlassian.jira.plu... ]
Steven Hawkins commented on TEIIDDES-1625:
------------------------------------------
> However, it does demonstrate a brittleness in teiid's code in its reliance on version number
I would say that it's only brittle with regards to where the version number is coming from and for the most part this is only an issue with using non-artifact jars. We could look at using a maven source pre-processing to hard code these values as Java constants, but really that just moves the target a little. It's still possible to use an inappropriate classpath to accidentally override those constants.
> The odd thing is that version is also gleaned from a serialized handshake object and this
correctly sets the client version to 8.3.0.Final. Consequently, although the client version is set correctly the server version is set to '$ {project.version}
I don't follow you here. Are you talking about from the perspective of the client or the server? The handshake flow starts with the server where the version should be set to the project version on the server side. That flows to the client and the client records that as the server version. The client then updates the handshake version to its own version and sends it back, then the server records that response version as the client version.
> Maybe consider avoiding the use of version variables in the code and instead prefer to remove SealedObject message wrapping entirely. If the server is older and does return SealedObject messages then simply test the class of the message content and unseal accordingly. Difficult to see the benefit of keeping such code in the client/server if it is effectively deprecated.
The whole point is to maintain backwards/forwards compatibility. An 8.3 client connecting to an 8.2 server and vice versa should still work. For simply querying functionality we desire as much continuity as possible. If you simply remove sealed object handling from the client/server then a later client against a newer server or an older client against a newer server will no longer work.
> Unable to create JDBC connection to Teiid 8.3 Final from Designer
> -----------------------------------------------------------------
>
> Key: TEIIDDES-1625
> URL: https://issues.jboss.org/browse/TEIIDDES-1625
> Project: Teiid Designer
> Issue Type: Bug
> Reporter: Barry LaFond
> Assignee: Paul Richardson
> Fix For: 8.1
>
>
> Upgraded Teiid designer to 8.3 Final bits
> Tried to Preview a table and received following exception:
> !ENTRY org.teiid.designer.dqp.ui 4 0 2013-03-19 11:33:24.518
> !MESSAGE javax.crypto.SealedObject cannot be cast to org.teiid.client.security.LogonResult
> !STACK 0
> java.lang.ClassCastException: javax.crypto.SealedObject cannot be cast to org.teiid.client.security.LogonResult
> at sun.proxy.$Proxy27.logon(Unknown Source)
> at org.teiid.net.socket.SocketServerConnection.logon(SocketServerConnection.java:173)
> at org.teiid.net.socket.SocketServerConnection.selectServerInstance(SocketServerConnection.java:125)
> at org.teiid.net.socket.SocketServerConnection.<init>(SocketServerConnection.java:92)
> at org.teiid.net.socket.SocketServerConnectionFactory.getConnection(SocketServerConnectionFactory.java:312)
> at org.teiid.jdbc.SocketProfile.connect(SocketProfile.java:54)
> at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:107)
> at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:1)
> at org.teiid.datatools.connectivity.TeiidJDBCConnection.createConnection(TeiidJDBCConnection.java:83)
> at org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:105)
> at org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)
> at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:73)
> at org.teiid.datatools.connectivity.TeiidJDBCConnectionFactory.createConnection(TeiidJDBCConnectionFactory.java:23)
> at org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)
> at org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.getSqlConnection(PreviewDataWorker.java:621)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.internalRun(PreviewDataWorker.java:398)
> at org.teiid.designer.runtime.ui.preview.PreviewDataWorker.run(PreviewDataWorker.java:263)
> at org.teiid.designer.runtime.ui.preview.PreviewTableDataContextAction.run(PreviewTableDataContextAction.java:99)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years