[JBoss JIRA] (TEIID-2879) Add more Resource Management
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2879?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-2879.
---------------------------------
> Add more Resource Management
> ----------------------------
>
> Key: TEIID-2879
> URL: https://issues.jboss.org/browse/TEIID-2879
> Project: Teiid
> Issue Type: Feature Request
> Reporter: Rick Wagner
> Assignee: Steven Hawkins
>
> To protect the system sometimes we may need to throttle the queries to ensure it does not exhaust all the existing resources on the server. Resource management is the key to play this role of monitoring and throttling queries. Oracle products offer such a feature for managing the consumption of resources. We have quite a number of (Teiid) profiles running on a big box and we want to ensure no silly queires are hogging on to all the resources and consequently causing issue to others.
> Ability to throttle the query by restricting query that uses
> 1) Too much CPU
> 2) Too much java heap
> 3) Long running query
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-4802) Not in with subquery does not work correctly
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4802?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-4802.
---------------------------------
> Not in with subquery does not work correctly
> --------------------------------------------
>
> Key: TEIID-4802
> URL: https://issues.jboss.org/browse/TEIID-4802
> Project: Teiid
> Issue Type: Bug
> Affects Versions: 9.0.5, 9.1.4
> Reporter: Bram Gadeyne
> Assignee: Steven Hawkins
> Priority: Critical
> Attachments: query_plan_not_in.txt
>
>
> Hi,
> This query does not return any results where it should.
> {code:sql}
> select cl.*
> from izalert_clientstatus cl
> where cl.hostname not in (
> select WSidentifier from prod_U_PV_PClist
> )
> {code}
> This query is more or less equivalent to the one above but does return 28 results.
> {code:sql}
> select cl.hostname
> from izalert_clientstatus cl
> left join prod_U_PV_PClist pl on cl.hostname = pl.WSidentifier
> where pl.WSidentifier is null
> {code}
> hostname and wsidentifier are both String fields. In the clientstatus table it has a length of 255, in the other table 63. The values for hostname and wsidentifier are e.g. 'COSARA4' and 'PC-10360'
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-4575) No such accessible property/method in the class after deploy vdb
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4575?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-4575.
---------------------------------
> No such accessible property/method in the class after deploy vdb
> ----------------------------------------------------------------
>
> Key: TEIID-4575
> URL: https://issues.jboss.org/browse/TEIID-4575
> Project: Teiid
> Issue Type: Bug
> Components: Documentation, JDG Connector
> Affects Versions: 9.2
> Reporter: Matej Kralik
> Assignee: Van Halbert
> Attachments: JDGproject.zip
>
>
> When I want to deploy dynamic VDB with JDG materialization, the server shows me : TEIID31111 No such accessible property/method ISBN on class org.teiid.jdg.pojo.Book.
> I looked at Book.java and ISBN is there.
> The class is generated in the teiid designer. In the attachment is the project with dynamicVDB and generated JDG module.
> Stacktrace:
> {code:java}
> 12:34:07,140 WARN [org.teiid.CONNECTOR] (Worker0_QueryProcessorQueue223) Connector worker process failed for atomic-request=e3xcwoJghvNm.0.69.131: org.teiid.translator.TranslatorException: TEIID31111 No such accessible property/method ISBN on class org.teiid.jdg.pojo.Book.
> at org.teiid.translator.object.ObjectUpdateExecution.evaluate(ObjectUpdateExecution.java:524) [translator-object-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.translator.object.ObjectUpdateExecution.handleInsert(ObjectUpdateExecution.java:219) [translator-object-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.translator.object.ObjectUpdateExecution.executeUpdate(ObjectUpdateExecution.java:150) [translator-object-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.translator.object.ObjectUpdateExecution.execute(ObjectUpdateExecution.java:108) [translator-object-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:402) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:364) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source) [:1.8.0_91]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_91]
> at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_91]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at com.sun.proxy.$Proxy46.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:142) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.ProjectIntoNode.checkExitConditions(ProjectIntoNode.java:264) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.ProjectIntoNode.nextBatchDirect(ProjectIntoNode.java:164) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:282) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.BatchIterator.finalRow(BatchIterator.java:69) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:70) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.BatchIterator.getCurrentTuple(BatchIterator.java:84) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.proc.ProcedurePlan.executePlan(ProcedurePlan.java:608) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:69) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.proc.ExecDynamicSqlInstruction$1.process(ExecDynamicSqlInstruction.java:218) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:389) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:298) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:270) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.PlanExecutionNode.nextBatchDirect(PlanExecutionNode.java:118) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:282) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:150) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:282) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:472) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:348) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_91]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_91]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_91]
> Caused by: javax.script.ScriptException: TEIID31111 No such accessible property/method ISBN on class org.teiid.jdg.pojo.Book.
> at org.teiid.query.eval.TeiidScriptEngine$1.eval(TeiidScriptEngine.java:132) [teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> at org.teiid.translator.object.ObjectUpdateExecution.evaluate(ObjectUpdateExecution.java:521) [translator-object-8.12.5.redhat-8.jar:8.12.5.redhat-8]
> ... 47 more
> 12:34:07,146 WARN [org.teiid.MATVIEWS] (Worker0_QueryProcessorQueue225) org.teiid.jdbc.TeiidSQLException: TEIID30504 BookCacheSource: TEIID31111 No such accessible property/method ISBN on class org.teiid.jdg.pojo.Book.
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-4517) Add support for deleting child objects
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4517?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-4517.
---------------------------------
> Add support for deleting child objects
> --------------------------------------
>
> Key: TEIID-4517
> URL: https://issues.jboss.org/browse/TEIID-4517
> Project: Teiid
> Issue Type: Feature Request
> Components: JDG Connector
> Affects Versions: 8.12.7.6_3, 9.2
> Reporter: Jan Stastny
> Assignee: Van Halbert
>
> Infinispan cache dsl translator currently doesn't support deleting child objects when using complex POJO classes.
> Example of complex POJO:
> {code:plain}
> package org.jboss.qe.jdg.remote.protobuf.complex;
> /* @Indexed */
> message Person {
>
> /* @IndexedField(index=true, store=false) */
> required int32 id = 1;
>
> /* @IndexedField */
> required string name = 2;
>
> /* @IndexedField */
> optional string email = 3;
>
> /* @IndexedField(index=true, store=false) */
> repeated PhoneNumber phones = 4;
> /* @Indexed */
> message Address {
>
> /* @IndexedField */
> required string Address = 1;
>
> /* @IndexedField(index=true, store=false) */
> required string City = 2;
>
> /* @IndexedField(index=true, store=false) */
> required string State = 3;
> }
> /* @IndexedField(index=true, store=false) */
> optional Address address = 5;
> }
>
> /* @Indexed */
> message PhoneNumber {
>
> /* @IndexedField */
> required string number = 1;
> }
> {code}
> Mapped metadata:
> {code:sql}
> CREATE FOREIGN TABLE Address (
> Address string NOT NULL PRIMARY KEY OPTIONS (NAMEINSOURCE 'address.Address', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> City string NOT NULL OPTIONS (NAMEINSOURCE 'address.City', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> State string NOT NULL OPTIONS (NAMEINSOURCE 'address.State', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SELECTABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'address')
> ) OPTIONS (UPDATABLE TRUE);
>
> CREATE FOREIGN TABLE Person (
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> name string NOT NULL OPTIONS (NAMEINSOURCE 'name', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> email string OPTIONS (NAMEINSOURCE 'email', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> CONSTRAINT PK_ID PRIMARY KEY(id)
> ) OPTIONS (UPDATABLE TRUE);
>
> CREATE FOREIGN TABLE PhoneNumber (
> number string NOT NULL PRIMARY KEY OPTIONS (NAMEINSOURCE 'phones.number', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'),
> id integer NOT NULL OPTIONS (NAMEINSOURCE 'id', SELECTABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'),
> CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'phones')
> ) OPTIONS (UPDATABLE TRUE);
> {code}
> Expected usage:
> {code:sql}
> DELETE FROM PhoneNumber WHERE id=3
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-4740) Update statement doesn't work correctly for data sources in some cases
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4740?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-4740.
---------------------------------
> Update statement doesn't work correctly for data sources in some cases
> ----------------------------------------------------------------------
>
> Key: TEIID-4740
> URL: https://issues.jboss.org/browse/TEIID-4740
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 9.0.3
> Environment: teiid-9.0.3 on WildFly Full 9.0.2.Final (WildFly Core 1.0.2.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Priority: Blocker
>
> Running the following query:
> {code:sql}
> UPDATE test_int.contacttest
> SET test_int.contacttest.salutation = (
> select
> test_int.updatetest.prefix
> from test_int.updatetest
> where test_int.updatetest.id = test_int.contacttest.id
> );
> {code}
> works correctly changing salutation field value according to where condition (note that contacttest and updatetest table are in the same test_int data source). But the following query:
> {code:sql}
> UPDATE test.contacttest
> SET test.contacttest.salutation = (
> select
> test_int.updatetest.prefix
> from test_int.updatetest
> where test_int.updatetest.id = test.contacttest.id
> );
> {code}
> will fail as we try to update "contacttest" table of "test" data source from another "test_int" data source using "updatetest" table in where condition. The query fails showing the following error message:
> {code}
> Error: TEIID30253 Remote org.teiid.api.exception.query.QueryPlannerException: TEIID30253 Source UPDATE or DELETE command "UPDATE test.contacttest SET salutation = (SELECT test_int.updatetest.prefix FROM test_int.updatetest WHERE test_int.updatetest.id = test.contacttest.id LIMIT 2)" contains non-pushdown constructs and no compensating action can be taken as the table lacks a unique key or the source does not support equality predicates.
> SQLState: 50000
> ErrorCode: 30253
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5126) Osisoft translator - SUBSTRING fails when start > string length
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5126?page=com.atlassian.jira.plugin... ]
Steven Hawkins closed TEIID-5126.
---------------------------------
> Osisoft translator - SUBSTRING fails when start > string length
> ---------------------------------------------------------------
>
> Key: TEIID-5126
> URL: https://issues.jboss.org/browse/TEIID-5126
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Driver
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
> Priority: Minor
> Fix For: 10.1
>
>
> Calling a query such as
> {code:sql}
> SELECT cast(TIMESTAMPVALUE as string), SUBSTRING(TIMESTAMPVALUE, 22, 0) FROM BQT1.SmallA
> {code}
> fails with the following (the length of timestampvalue converted to string is 20):
> {noformat}
> Connector worker process failed for atomic-request=HOiQATHW3fPH.12.0.9: org.teiid.translator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [SQL: SELECT TOP 100 cast(g_0.TimestampValue AS String) AS c_0, SUBSTR(cast(g_0.TimestampValue AS String), 22, 0) AS c_1 FROM dvqe..SmallA AS g_0]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131) [translator-jdbc-8.12.11.6_4.jar:8.12.11.6_4]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:363)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_141]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_141]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_141]
> at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_141]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy79.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_141]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_141]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_141]
> at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_141]
> Caused by: java.sql.SQLException: [PIOLEDBENT] Arguments are invalid.
> at com.osisoft.jdbc.StatementImpl.executeQuery(StatementImpl.java:360)
> at org.jboss.jca.adapters.jdbc.WrappedStatement.executeQuery(WrappedStatement.java:344)
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:119) [translator-jdbc-8.12.11.6_4.jar:8.12.11.6_4]
> ... 18 more
> Caused by: com.osisoft.rdsa.RdsaException: [PIOLEDBENT] Arguments are invalid.
> at com.osisoft.rdsa.Command.ExecuteReader(Native Method)
> at com.osisoft.rdsa.Command.executeReader(Command.java:79)
> at com.osisoft.jdbc.StatementImpl.executeQuery(StatementImpl.java:356)
> ... 20 more
> {noformat}
> This appears to be an issue with the SUBSTR implementation on the PI server, we are ok with either a workaround or documenting as KI.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months