[JBoss JIRA] (TEIID-1832) Change to source model connection through AdminApi using assignToModel() does not reflect in jdbc queries to that source model
by Farrukh Ihtisham (Created) (JIRA)
Change to source model connection through AdminApi using assignToModel() does not reflect in jdbc queries to that source model
------------------------------------------------------------------------------------------------------------------------------
Key: TEIID-1832
URL: https://issues.jboss.org/browse/TEIID-1832
Project: Teiid
Issue Type: Bug
Components: AdminApi
Affects Versions: 7.5
Environment: Windows server 2008 R2, JBoss 5.1
Reporter: Farrukh Ihtisham
Assignee: Steven Hawkins
When source model's connection is changed using following adminapi code;
AdminFactory adminFactory = AdminFactory.getInstance();
Admin admin = adminFactory.createAdmin("admin", "admin".toCharArray(), "mms://localhost:31443");
admin.assignToModel("Sample", 1, "SQLSourceA", "SQLSourceA", "sqlserver", "SQLSourceA_2");
Any jdbc query result would still be from the old data source. However when verified using following adminapi code;
VDB vdb = admin.getVDB("sample", 1);
Model m = vdb.getModel("SQLSourceA");
String jndiName = m.getSourceConnectionJndiName("SQLSourceA");
The jndiName shows that the connection is successfully updated.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 4 months
[JBoss JIRA] (TEIID-174) add support to MMCallableStatement for named parameter methods
by Steven Hawkins (Resolved) (JIRA)
[ https://issues.jboss.org/browse/TEIID-174?page=com.atlassian.jira.plugin.... ]
Steven Hawkins resolved TEIID-174.
----------------------------------
Assignee: Steven Hawkins
Resolution: Done
Updated the callablestatement logic to work with named parameters. This required a change to the metadataprocessor, so named set methods will only work for 8.0+ clients/servers. Named get methods will work with 8.0+ clients and any compatible server version.
I took at pass in general through our unsupported methods. In total about 90 methods were implemented by this JIRA. There are still ~160 remaining.
> add support to MMCallableStatement for named parameter methods
> --------------------------------------------------------------
>
> Key: TEIID-174
> URL: https://issues.jboss.org/browse/TEIID-174
> Project: Teiid
> Issue Type: Feature Request
> Components: JDBC Driver
> Affects Versions: 6.0.0
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Minor
> Fix For: 8.0
>
>
> Defect Tracker #20152: Now that we support named parameters for procedure, we should implement the setter methods in CallableStatement having to do with named parameters.
> Be sure to update the list of Unsupported Methods in our JDBC driver, wherever that list is. Last report, it was sent to Warren to be added as an appendix to some documentation.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 4 months
[JBoss JIRA] (TEIID-1811) Deleting a VDB from inventory does not remove it
by Steven Hawkins (Resolved) (JIRA)
[ https://issues.jboss.org/browse/TEIID-1811?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-1811.
-----------------------------------
Fix Version/s: (was: 7.6)
Resolution: Rejected
>From the SOA JIRA this seems like it is solely a JON issue and addressed by later JON releases. Rejecting as a Teiid issue.
> Deleting a VDB from inventory does not remove it
> ------------------------------------------------
>
> Key: TEIID-1811
> URL: https://issues.jboss.org/browse/TEIID-1811
> Project: Teiid
> Issue Type: Bug
> Components: Tools
> Affects Versions: 7.6
> Environment: JON 2.4.1/3.0.0, PostgreSQL 8.4.8, OpenJDK 1.6.0, SOA-P/EDS
> 5.1.0/5.2.0 GA
> Reporter: Pavel Kralik
> Assignee: Ted Jones
>
> Using JON 2.4, deleting a VDB through JON GUI inventory removes the vdb from
> the EDS instance, but does not remove it from inventory. Instead, it shows the
> vdb as unavailable.
> How reproducible:
> Steps to Reproduce:
> 1. Deploy a vdb to EDS
> 2. Have agent report vdb to JON, verify in GUI
> 3. In JON inventory, delete the vdb
> Actual results:
> VDB is removed from physical server but remains in JON inventory, just as
> disabled. It remains there even after running 'discovery -f' from the agent
> console.
> Expected results:
> VDB is removed from physical server and removed from JON inventory.
> Additional info:
> https://bugzilla.redhat.com/show_bug.cgi?id=739789
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 4 months
[JBoss JIRA] (TEIID-1786) Cannot invoke stored function that returns resultset on Oracle
by Steven Hawkins (Closed) (JIRA)
[ https://issues.jboss.org/browse/TEIID-1786?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-1786.
---------------------------------
> Cannot invoke stored function that returns resultset on Oracle
> ---------------------------------------------------------------
>
> Key: TEIID-1786
> URL: https://issues.jboss.org/browse/TEIID-1786
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 7.4.1
> Reporter: Filip Nguyen
> Assignee: Steven Hawkins
> Priority: Blocker
>
> My goal was to return result set from stored procedure using Teiid on Oracle. This should be only possible by stored function.
> I created stored function in the DB
> {code:title=The stored function|borderStyle=solid}
> create or replace FUNCTION getEmployeeSurnames RETURN sys_refcursor AS
> resultset sys_refcursor;
> BEGIN
> OPEN RESULTSET FOR SELECT surname FROM employees;
> RETURN RESULTSET;
> END;
> {code}
> In Teiid designer I imported the function (VDB in attachment). After deploying the VDB I tried to call the function
> {code:title=JDBC query|borderStyle=solid}
> List<String> surnameList = new ArrayList<String>();
>
> String[] connectionProps = useCache ?
> new String[] {"resultSetCacheMode=true"} :
> new String[] {};
> String query = "{CALL getEmployeeSurnames()}";
> Connection conn = getTeiidConnection(VDBNAME, connectionProps);
> Statement cs = conn.createStatement();
>
> cs.execute(query);
> ResultSet rs = cs.executeQuery(query);
> while (rs.next()) {
> surnameList.add(rs.getString(1));
> }
> conn.close();
> {code}
> The exception on the server is
> {code:title=server.log|borderStyle=solid}
> 10:57:57,713 WARN [org.teiid.CONNECTOR] Connector worker process failed for atomic-request=YI3UxN+ZHXZU.0.2.79
> [TranslatorException] 65000: Error Code:65000 Message:'{ call GETEMPLOYEESURNAMES()}' error executing statement(s): {1}
> 1 [SQLException]ORA-06550: line 1, column 7:
> PLS-00221: 'GETEMPLOYEESURNAMES' is not a procedure or is undefined
> ORA-06550: line 1, column 7:
> PL/SQL: Statement ignored
> at org.teiid.translator.jdbc.JDBCProcedureExecution.execute(JDBCProcedureExecution.java:70)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:264)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:338)
> at org.teiid.dqp.internal.process.DataTierTupleSource.access$000(DataTierTupleSource.java:80)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:138)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:135)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at org.teiid.dqp.internal.process.DQPCore$FutureWork.run(DQPCore.java:121)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:194)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:118)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:288)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> Caused by: java.sql.SQLException: ORA-06550: line 1, column 7:
> PLS-00221: 'GETEMPLOYEESURNAMES' is not a procedure or is undefined
> ORA-06550: line 1, column 7:
> PL/SQL: Statement ignored
> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440)
> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
> at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:837)
> at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445)
> at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191)
> at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:523)
> at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:204)
> at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1007)
> at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1315)
> at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3576)
> at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3677)
> at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4714)
> at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1374)
> at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.execute(WrappedPreparedStatement.java:299)
> at org.teiid.translator.jdbc.JDBCExecutionFactory.executeStoredProcedure(JDBCExecutionFactory.java:774)
> at org.teiid.translator.jdbc.JDBCProcedureExecution.execute(JDBCProcedureExecution.java:67)
> ... 14 more
> {code}
> This is solely problem on Oracle. I tried tested stored procedures/functions that return resultsets on other DB engines without problems (Postgres, MSSQL, MySQL, DB2).
> Additional info. In SOA platform there is native oracle driver:
> {code:title=ojdbc6.jar MANIFEST.MF|borderStyle=solid}
> Manifest-Version: 1.0
> Ant-Version: Apache Ant 1.6.5
> Created-By: 1.5.0_24-rev-b08 (Sun Microsystems Inc.)
> Implementation-Vendor: Oracle Corporation
> Implementation-Title: JDBC
> Implementation-Version: 11.2.0.2.0
> Repository-Id: JAVAVM_11.2.0.2.0_LINUX_100812.1
> Specification-Vendor: Sun Microsystems Inc.
> Specification-Title: JDBC
> Specification-Version: 4.0
> Main-Class: oracle.jdbc.OracleDriver
> sealed: true
> Name: oracle/sql/converter/
> Sealed: false
> Name: oracle/sql/
> Sealed: false
> Name: oracle/sql/converter_xcharset/
> Sealed: false
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 4 months
[JBoss JIRA] Created: (TEIID-1668) Exception trying to preview data or execute VDB against SYBASE BQT2 table containing clob column
by Barry LaFond (JIRA)
Exception trying to preview data or execute VDB against SYBASE BQT2 table containing clob column
------------------------------------------------------------------------------------------------
Key: TEIID-1668
URL: https://issues.jboss.org/browse/TEIID-1668
Project: Teiid
Issue Type: Bug
Reporter: Barry LaFond
Assignee: Steven Hawkins
Testing various BQT2 DB's including Sybase.
1) Imported SMALLA & SMALLB tables, added to VDB and deployed
2) Able to query SELECT IntKey FROM SMALLA and get results
2) Try to perform SELECT * FROM SMALLA and get the following
16:49:28,338 WARN [PROCESSOR] Processing exception 'BQT2_2: Unexpected exception while translating results: Error' for request rLu0N1TlGtw/.6. Exception type org.teiid.core.TeiidProcessingException thrown from org.jboss.resource.adapter.jdbc.WrappedConnection.checkException(WrappedConnection.java:873). Enable more detailed logging to see the entire stacktrace.
16:49:42,992 WARN [TxConnectionManager] Connection error occured: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@1005083[state=NORMAL mc=org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@b0818a handles=1 lastUse=1309988982862 permit=true trackByTx=false mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@1b6e768 context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@11261d3 xaResource=org.jboss.resource.connectionmanager.TxConnectionManager$LocalXAResource@89ede txSync=null]
java.lang.UnsupportedOperationException: The method com.sybase.jdbc3.jdbc.SybCursorResultSet.getClob(int) is not supported and should not be called.
at com.sybase.jdbc3.jdbc.ErrorMessage.raiseRuntimeException(Unknown Source)
at com.sybase.jdbc3.utils.Debug.notSupported(Unknown Source)
at com.sybase.jdbc3.jdbc.SybResultSet.getClob(Unknown Source)
at org.jboss.resource.adapter.jdbc.WrappedResultSet.getClob(WrappedResultSet.java:503)
at org.teiid.translator.jdbc.JDBCExecutionFactory.retrieveValue(JDBCExecutionFactory.java:929)
at org.teiid.translator.jdbc.sybase.SybaseExecutionFactory.retrieveValue(SybaseExecutionFactory.java:358)
at org.teiid.translator.jdbc.JDBCQueryExecution.next(JDBCQueryExecution.java:103)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:282)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:267)
at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:338)
at org.teiid.dqp.internal.process.DataTierTupleSource.access$000(DataTierTupleSource.java:80)
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:138)
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:135)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:197)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:118)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:288)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
16:49:43,050 WARN [CONNECTOR] Connector worker process failed for atomic-request=A1ZwTKKSzuDt.0.1.22
[TranslatorException]Unexpected exception while translating results: Error
1 [NestedSQLException]Error
at org.teiid.translator.jdbc.JDBCQueryExecution.next(JDBCQueryExecution.java:110)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:282)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:267)
at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:338)
at org.teiid.dqp.internal.process.DataTierTupleSource.access$000(DataTierTupleSource.java:80)
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:138)
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:135)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:197)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:118)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:288)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.jboss.util.NestedSQLException: Error
at org.jboss.resource.adapter.jdbc.WrappedConnection.checkException(WrappedConnection.java:873)
at org.jboss.resource.adapter.jdbc.WrappedStatement.checkException(WrappedStatement.java:852)
at org.jboss.resource.adapter.jdbc.WrappedResultSet.checkException(WrappedResultSet.java:1947)
at org.jboss.resource.adapter.jdbc.WrappedResultSet.next(WrappedResultSet.java:1200)
at org.teiid.translator.jdbc.JDBCQueryExecution.next(JDBCQueryExecution.java:97)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 4 months