[JBoss JIRA] (TEIID-2165) Change filenames for consistency
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2165?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-2165.
-----------------------------------
Resolution: Out of Date
Teiid rars are now deployed as modules.
> Change filenames for consistency
> --------------------------------
>
> Key: TEIID-2165
> URL: https://issues.jboss.org/browse/TEIID-2165
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Reporter: B Long
> Assignee: Steven Hawkins
> Priority: Minor
>
> Many of the connectors in the deploy directory are referred to as adapters (including in the description field of their META-INF/ra.xml files). And we are told in much of the documentation that the connector framework consists of translators and resource adapters. However, the connectors in the deploy/teiid/connectors directory are named teiid-connector-*.rar. I would like to suggest that these be renamed to teiid-adapter-*.rar for consistency. And that the eis-type field of their META-INF/ra.xml files also be changed accordingly.
--
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
11 years, 7 months
[JBoss JIRA] (TEIID-2443) Support Language feature for "With Rollup"
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2443?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-2443:
----------------------------------
Fix Version/s: 8.5
> Support Language feature for "With Rollup"
> ------------------------------------------
>
> Key: TEIID-2443
> URL: https://issues.jboss.org/browse/TEIID-2443
> Project: Teiid
> Issue Type: Feature Request
> Components: Query Engine
> Reporter: Ramesh Reddy
> Assignee: Steven Hawkins
> Labels: analytical, olap, teiid
> Fix For: 8.5
>
>
> It would be useful to provide the clause 'WITH ROLLUP' in Teiid for analytical type queries. Example:
> {code}
> Group Name SalesYTD
> North America Northwest 123237.00
> North America Northwest 37534.00
> North America Northwest 48003.00
> North America Southwest 164232.00
> North America Southeast 39667.00
> North America Southeast 105810.00
> Europe France 74569.00
> Europe Germany 59456.00
> Pacific Australia 93403.00
> Europe United Kingdom 78327.00
> {code}
> With query like
> {code:SQL}
> SELECT [Group], [Name], SUM([SalesYTD]) AS 'Total Sales'
> FROM Table
> GROUP BY [Group], [Name] WITH ROLLUP
> {code}
> will produce
> {code}
> Group Name Total Sales
> Europe France 74569.00
> Europe Germany 59456.00
> Europe United Kingdom 78327.00
> Europe NULL 212352.00
> North America Northwest 208774.00
> North America Southeast 145477.00
> North America Southwest 164232.00
> North America NULL 518483.00
> Pacific Australia 93403.00
> Pacific NULL 93403.00
> NULL NULL 824238.00
> {code}
> 4 rows have been added, 3 for sub total of each [Group], and 1 row for grand total.
> Teiid needa to build it's analytical function library to be useful in reporting situations.
--
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
11 years, 7 months
[JBoss JIRA] (TEIID-2522) Let Extract(<Oracle Date field>) extract time components
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2522?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-2522:
----------------------------------
Fix Version/s: 8.5
The basic approach is to add logic similar to the string cast handling that will look for the native type of the column being extracted from and add an oracle cast to timestamp if it's a date.
> Let Extract(<Oracle Date field>) extract time components
> --------------------------------------------------------
>
> Key: TEIID-2522
> URL: https://issues.jboss.org/browse/TEIID-2522
> Project: Teiid
> Issue Type: Enhancement
> Components: JDBC Connector
> Reporter: Alex K.
> Assignee: Steven Hawkins
> Priority: Minor
> Fix For: 8.5
>
>
> According to the Oracle's docs:
>
> "The DATE datatype stores point-in-time values (dates and times) in a table. The DATE datatype stores the year (including the century), the month, the day, the hours, the minutes, and the seconds (after midnight)."
>
> I expect to be able to extract the time parts from a date field, but when I am trying to extract the hour from an oracle's date field like:
>
> {code:sql}
> SELECT EXTRACT(HOUR FROM a.modifieddate)
> FROM oracle_db.salestaxrate a
> WHERE a.salestaxrateid = 1
> {code}
>
> and get a TEIID30504 exception. When I look deeper in Teiid's log, i see the following Oracle's exception:
>
> Caused by: java.sql.SQLException: Remote java.sql.SQLException: ORA-30076: invalid extract field for extract source
> That is an odd Oracle limitation - http://docs.oracle.com/cd/B28359_01/server.111/b28286/functions052.htm
>
> "If HOUR, MINUTE, or SECOND is requested, then expr must evaluate to an expression of datatype TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE, or INTERVAL DAY TO SECOND. DATE is not valid here, because Oracle Database treats it as ANSI DATE datatype, which has no time fields."
> *please enable extracting of time components from oracle's Date Fields* despite the Oracle's limitation
--
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
11 years, 7 months
[JBoss JIRA] (TEIID-2518) Delete statement with having UDF functions in its inline view is giving issues
by Mark Addleman (JIRA)
[ https://issues.jboss.org/browse/TEIID-2518?page=com.atlassian.jira.plugin... ]
Mark Addleman commented on TEIID-2518:
--------------------------------------
Continuing discussion at https://community.jboss.org/thread/228993
> Delete statement with having UDF functions in its inline view is giving issues
> ------------------------------------------------------------------------------
>
> Key: TEIID-2518
> URL: https://issues.jboss.org/browse/TEIID-2518
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.1
> Reporter: Rajasekhar Kota
> Assignee: Steven Hawkins
> Priority: Critical
> Fix For: 8.4
>
> Attachments: DeleteWithInlineQuery.java, ErrorMessage.txt, TeiidUDFExecutionFactory.java
>
>
> Delete queries having UDF function in it's inline view is giving issues.
> Please find the attached test cases to reproduce the issue.
> Here is the problematic query and where primary_key is an UDF function.
> delete from testSchema.tableA where policyfkeyxml not in (select primary_key('testSchema.tableB','policyID',policyID) as expr from testSchema.tableB)
> Here is the exception that we are getting when we run above query from a test case.
> WARNING: Connector worker process failed for atomic-request=tmG/kv17VS0S.0.0.0
> org.teiid.translator.jdbc.JDBCExecutionException: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:211)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.execute(JDBCUpdateExecution.java:71)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:290)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:257)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:425)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:270)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:279)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:279)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:146)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:112)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:153)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:382)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:291)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:219)
> at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:386)
> 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:601)
> at org.teiid.transport.LocalServerConnection$1$1.call(LocalServerConnection.java:131)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:249)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:233)
> at org.teiid.transport.LocalServerConnection$1.invoke(LocalServerConnection.java:129)
> at $Proxy11.executeRequest(Unknown Source)
> at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:631)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:506)
> at org.teiid.jdbc.StatementImpl.executeUpdate(StatementImpl.java:334)
> at com.ca.chorus.teiid.customfunctions.DeleteWithInlineQuery.testFailingInlineViewInDeleteQuery(DeleteWithInlineQuery.java:130)
> 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:601)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: org.h2.jdbc.JdbcSQLException: Function "PRIMARY_KEY" not found; SQL statement:
> DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB") [90022-168]
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
> at org.h2.message.DbException.get(DbException.java:169)
> at org.h2.message.DbException.get(DbException.java:146)
> at org.h2.command.Parser.readJavaFunction(Parser.java:2122)
> at org.h2.command.Parser.readFunction(Parser.java:2174)
> at org.h2.command.Parser.readTerm(Parser.java:2476)
> at org.h2.command.Parser.readFactor(Parser.java:2046)
> at org.h2.command.Parser.readSum(Parser.java:2033)
> at org.h2.command.Parser.readConcat(Parser.java:2006)
> at org.h2.command.Parser.readCondition(Parser.java:1871)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseSelectSimpleSelectPart(Parser.java:1757)
> at org.h2.command.Parser.parseSelectSimple(Parser.java:1789)
> at org.h2.command.Parser.parseSelectSub(Parser.java:1684)
> at org.h2.command.Parser.parseSelectUnion(Parser.java:1527)
> at org.h2.command.Parser.parseSelect(Parser.java:1515)
> at org.h2.command.Parser.readCondition(Parser.java:1921)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseDelete(Parser.java:738)
> at org.h2.command.Parser.parsePrepared(Parser.java:336)
> at org.h2.command.Parser.parse(Parser.java:279)
> at org.h2.command.Parser.parse(Parser.java:251)
> at org.h2.command.Parser.prepareCommand(Parser.java:217)
> at org.h2.engine.Session.prepareLocal(Session.java:415)
> at org.h2.engine.Session.prepareCommand(Session.java:364)
> at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1109)
> at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:74)
> at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:264)
> at org.teiid.translator.jdbc.JDBCBaseExecution.getPreparedStatement(JDBCBaseExecution.java:181)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:168)
> ... 55 more
> May 28, 2013 7:14:51 PM org.teiid.logging.JavaLogger log
> WARNING: TEIID30020 Processing exception 'TEIID30504 h2Translator: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]' for request tmG/kv17VS0S.0. Exception type org.teiid.core.TeiidProcessingException thrown from org.h2.message.DbException.getJdbcSQLException(DbException.java:329). Enable more detailed logging to see the entire stacktrace.
> org.teiid.jdbc.TeiidSQLException: TEIID30504 h2Translator: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:113)
> at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:70)
> at org.teiid.jdbc.StatementImpl.postReceiveResults(StatementImpl.java:656)
> at org.teiid.jdbc.StatementImpl.access$100(StatementImpl.java:62)
> at org.teiid.jdbc.StatementImpl$2.onCompletion(StatementImpl.java:512)
> at org.teiid.client.util.ResultsFuture.addCompletionListener(ResultsFuture.java:139)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:508)
> at org.teiid.jdbc.StatementImpl.executeUpdate(StatementImpl.java:334)
> at com.ca.chorus.teiid.customfunctions.DeleteWithInlineQuery.testFailingInlineViewInDeleteQuery(DeleteWithInlineQuery.java:130)
> 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:601)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: org.teiid.core.TeiidProcessingException: TEIID30504 h2Translator: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.dqp.internal.process.DataTierTupleSource.exceptionOccurred(DataTierTupleSource.java:502)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:289)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:279)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:279)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:146)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:112)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:153)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:382)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:291)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:219)
> at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:386)
> 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:601)
> at org.teiid.transport.LocalServerConnection$1$1.call(LocalServerConnection.java:131)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:249)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:233)
> at org.teiid.transport.LocalServerConnection$1.invoke(LocalServerConnection.java:129)
> at $Proxy11.executeRequest(Unknown Source)
> at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:631)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:506)
> ... 26 more
> Caused by: org.teiid.translator.jdbc.JDBCExecutionException: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:211)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.execute(JDBCUpdateExecution.java:71)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:290)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:257)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:425)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:270)
> ... 50 more
> Caused by: org.h2.jdbc.JdbcSQLException: Function "PRIMARY_KEY" not found; SQL statement:
> DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB") [90022-168]
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
> at org.h2.message.DbException.get(DbException.java:169)
> at org.h2.message.DbException.get(DbException.java:146)
> at org.h2.command.Parser.readJavaFunction(Parser.java:2122)
> at org.h2.command.Parser.readFunction(Parser.java:2174)
> at org.h2.command.Parser.readTerm(Parser.java:2476)
> at org.h2.command.Parser.readFactor(Parser.java:2046)
> at org.h2.command.Parser.readSum(Parser.java:2033)
> at org.h2.command.Parser.readConcat(Parser.java:2006)
> at org.h2.command.Parser.readCondition(Parser.java:1871)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseSelectSimpleSelectPart(Parser.java:1757)
> at org.h2.command.Parser.parseSelectSimple(Parser.java:1789)
> at org.h2.command.Parser.parseSelectSub(Parser.java:1684)
> at org.h2.command.Parser.parseSelectUnion(Parser.java:1527)
> at org.h2.command.Parser.parseSelect(Parser.java:1515)
> at org.h2.command.Parser.readCondition(Parser.java:1921)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseDelete(Parser.java:738)
> at org.h2.command.Parser.parsePrepared(Parser.java:336)
> at org.h2.command.Parser.parse(Parser.java:279)
> at org.h2.command.Parser.parse(Parser.java:251)
> at org.h2.command.Parser.prepareCommand(Parser.java:217)
> at org.h2.engine.Session.prepareLocal(Session.java:415)
> at org.h2.engine.Session.prepareCommand(Session.java:364)
> at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1109)
> at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:74)
> at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:264)
> at org.teiid.translator.jdbc.JDBCBaseExecution.getPreparedStatement(JDBCBaseExecution.java:181)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:168)
> ... 55 more
--
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
11 years, 7 months
[JBoss JIRA] (TEIID-2462) WS-Security payload flow through "ws" resource adapter
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-2462?page=com.atlassian.jira.plugin... ]
Ramesh Reddy resolved TEIID-2462.
---------------------------------
Resolution: Done
During the SOAP Web Service invocation, if the Subject associated with execution thread, contains a password credential of type "WSSecurityCredential", then Teiid tries to map the properties from this object into CXF configuration for a pass though/payload based authentication.
Tested with Username Token, but SAML based auth is to be tested.
> WS-Security payload flow through "ws" resource adapter
> ------------------------------------------------------
>
> Key: TEIID-2462
> URL: https://issues.jboss.org/browse/TEIID-2462
> Project: Teiid
> Issue Type: Feature Request
> Components: Misc. Connectors
> Reporter: Ramesh Reddy
> Assignee: Ramesh Reddy
> Labels: cxf, ws-security
> Fix For: 8.4
>
>
> Currently only HTTPBasic security credentials flow through the web services resource adapter from the configured security domain, and authorized Subject.
> It is important to device a mechanism to enable security credentials flow through web services resource adapter for purposes ws-security. The idea is based on the Subject making resource adapter calls, the credential payload needs to be converted into CXF configuration.
--
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
11 years, 7 months
[JBoss JIRA] (TEIID-2518) Delete statement with having UDF functions in its inline view is giving issues
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2518?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-2518:
---------------------------------------
By including the function in the physical schema we are currently assuming that it must be a pushdown function - we effectively only check for cannot pushdown and treat allowed/must pushdown the same. Otherwise you would have to go through the extra step of adding the function to the supported functions list, which seems unnecessary since you've already added the function via a physical schema.
Ideally global/pushdown allowed functions would be added via a virtual model.
That said with the change to allow physical schema to have any virtual construct these assumptions may not quite match your expectations.
> Delete statement with having UDF functions in its inline view is giving issues
> ------------------------------------------------------------------------------
>
> Key: TEIID-2518
> URL: https://issues.jboss.org/browse/TEIID-2518
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.1
> Reporter: Rajasekhar Kota
> Assignee: Steven Hawkins
> Priority: Critical
> Fix For: 8.4
>
> Attachments: DeleteWithInlineQuery.java, ErrorMessage.txt, TeiidUDFExecutionFactory.java
>
>
> Delete queries having UDF function in it's inline view is giving issues.
> Please find the attached test cases to reproduce the issue.
> Here is the problematic query and where primary_key is an UDF function.
> delete from testSchema.tableA where policyfkeyxml not in (select primary_key('testSchema.tableB','policyID',policyID) as expr from testSchema.tableB)
> Here is the exception that we are getting when we run above query from a test case.
> WARNING: Connector worker process failed for atomic-request=tmG/kv17VS0S.0.0.0
> org.teiid.translator.jdbc.JDBCExecutionException: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:211)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.execute(JDBCUpdateExecution.java:71)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:290)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:257)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:425)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:270)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:279)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:279)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:146)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:112)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:153)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:382)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:291)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:219)
> at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:386)
> 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:601)
> at org.teiid.transport.LocalServerConnection$1$1.call(LocalServerConnection.java:131)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:249)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:233)
> at org.teiid.transport.LocalServerConnection$1.invoke(LocalServerConnection.java:129)
> at $Proxy11.executeRequest(Unknown Source)
> at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:631)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:506)
> at org.teiid.jdbc.StatementImpl.executeUpdate(StatementImpl.java:334)
> at com.ca.chorus.teiid.customfunctions.DeleteWithInlineQuery.testFailingInlineViewInDeleteQuery(DeleteWithInlineQuery.java:130)
> 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:601)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: org.h2.jdbc.JdbcSQLException: Function "PRIMARY_KEY" not found; SQL statement:
> DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB") [90022-168]
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
> at org.h2.message.DbException.get(DbException.java:169)
> at org.h2.message.DbException.get(DbException.java:146)
> at org.h2.command.Parser.readJavaFunction(Parser.java:2122)
> at org.h2.command.Parser.readFunction(Parser.java:2174)
> at org.h2.command.Parser.readTerm(Parser.java:2476)
> at org.h2.command.Parser.readFactor(Parser.java:2046)
> at org.h2.command.Parser.readSum(Parser.java:2033)
> at org.h2.command.Parser.readConcat(Parser.java:2006)
> at org.h2.command.Parser.readCondition(Parser.java:1871)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseSelectSimpleSelectPart(Parser.java:1757)
> at org.h2.command.Parser.parseSelectSimple(Parser.java:1789)
> at org.h2.command.Parser.parseSelectSub(Parser.java:1684)
> at org.h2.command.Parser.parseSelectUnion(Parser.java:1527)
> at org.h2.command.Parser.parseSelect(Parser.java:1515)
> at org.h2.command.Parser.readCondition(Parser.java:1921)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseDelete(Parser.java:738)
> at org.h2.command.Parser.parsePrepared(Parser.java:336)
> at org.h2.command.Parser.parse(Parser.java:279)
> at org.h2.command.Parser.parse(Parser.java:251)
> at org.h2.command.Parser.prepareCommand(Parser.java:217)
> at org.h2.engine.Session.prepareLocal(Session.java:415)
> at org.h2.engine.Session.prepareCommand(Session.java:364)
> at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1109)
> at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:74)
> at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:264)
> at org.teiid.translator.jdbc.JDBCBaseExecution.getPreparedStatement(JDBCBaseExecution.java:181)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:168)
> ... 55 more
> May 28, 2013 7:14:51 PM org.teiid.logging.JavaLogger log
> WARNING: TEIID30020 Processing exception 'TEIID30504 h2Translator: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]' for request tmG/kv17VS0S.0. Exception type org.teiid.core.TeiidProcessingException thrown from org.h2.message.DbException.getJdbcSQLException(DbException.java:329). Enable more detailed logging to see the entire stacktrace.
> org.teiid.jdbc.TeiidSQLException: TEIID30504 h2Translator: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:113)
> at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:70)
> at org.teiid.jdbc.StatementImpl.postReceiveResults(StatementImpl.java:656)
> at org.teiid.jdbc.StatementImpl.access$100(StatementImpl.java:62)
> at org.teiid.jdbc.StatementImpl$2.onCompletion(StatementImpl.java:512)
> at org.teiid.client.util.ResultsFuture.addCompletionListener(ResultsFuture.java:139)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:508)
> at org.teiid.jdbc.StatementImpl.executeUpdate(StatementImpl.java:334)
> at com.ca.chorus.teiid.customfunctions.DeleteWithInlineQuery.testFailingInlineViewInDeleteQuery(DeleteWithInlineQuery.java:130)
> 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:601)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: org.teiid.core.TeiidProcessingException: TEIID30504 h2Translator: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.dqp.internal.process.DataTierTupleSource.exceptionOccurred(DataTierTupleSource.java:502)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:289)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:279)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:279)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:146)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:112)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:153)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:382)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:291)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:219)
> at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:386)
> 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:601)
> at org.teiid.transport.LocalServerConnection$1$1.call(LocalServerConnection.java:131)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:249)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:233)
> at org.teiid.transport.LocalServerConnection$1.invoke(LocalServerConnection.java:129)
> at $Proxy11.executeRequest(Unknown Source)
> at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:631)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:506)
> ... 26 more
> Caused by: org.teiid.translator.jdbc.JDBCExecutionException: 90022 TEIID11013:TEIID11004 Error executing statement(s): [Prepared Values: [] SQL: DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB")]
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:211)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.execute(JDBCUpdateExecution.java:71)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:290)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:257)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:425)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:270)
> ... 50 more
> Caused by: org.h2.jdbc.JdbcSQLException: Function "PRIMARY_KEY" not found; SQL statement:
> DELETE FROM "MEM"."TESTSCHEMA"."TABLEA" WHERE "MEM"."TESTSCHEMA"."TABLEA"."POLICYFKEYXML" NOT IN (SELECT primary_key('testSchema.tableB', 'policyID', "MEM"."TESTSCHEMA"."TABLEB"."POLICYID") AS expr FROM "MEM"."TESTSCHEMA"."TABLEB") [90022-168]
> at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
> at org.h2.message.DbException.get(DbException.java:169)
> at org.h2.message.DbException.get(DbException.java:146)
> at org.h2.command.Parser.readJavaFunction(Parser.java:2122)
> at org.h2.command.Parser.readFunction(Parser.java:2174)
> at org.h2.command.Parser.readTerm(Parser.java:2476)
> at org.h2.command.Parser.readFactor(Parser.java:2046)
> at org.h2.command.Parser.readSum(Parser.java:2033)
> at org.h2.command.Parser.readConcat(Parser.java:2006)
> at org.h2.command.Parser.readCondition(Parser.java:1871)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseSelectSimpleSelectPart(Parser.java:1757)
> at org.h2.command.Parser.parseSelectSimple(Parser.java:1789)
> at org.h2.command.Parser.parseSelectSub(Parser.java:1684)
> at org.h2.command.Parser.parseSelectUnion(Parser.java:1527)
> at org.h2.command.Parser.parseSelect(Parser.java:1515)
> at org.h2.command.Parser.readCondition(Parser.java:1921)
> at org.h2.command.Parser.readAnd(Parser.java:1852)
> at org.h2.command.Parser.readExpression(Parser.java:1844)
> at org.h2.command.Parser.parseDelete(Parser.java:738)
> at org.h2.command.Parser.parsePrepared(Parser.java:336)
> at org.h2.command.Parser.parse(Parser.java:279)
> at org.h2.command.Parser.parse(Parser.java:251)
> at org.h2.command.Parser.prepareCommand(Parser.java:217)
> at org.h2.engine.Session.prepareLocal(Session.java:415)
> at org.h2.engine.Session.prepareCommand(Session.java:364)
> at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1109)
> at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:74)
> at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:264)
> at org.teiid.translator.jdbc.JDBCBaseExecution.getPreparedStatement(JDBCBaseExecution.java:181)
> at org.teiid.translator.jdbc.JDBCUpdateExecution.executeTranslatedCommand(JDBCUpdateExecution.java:168)
> ... 55 more
--
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
11 years, 7 months