Products | Versions |
---|---|
TIBCO Data Virtualization | All supported versions. |
PROCEDURE testProc(OUT num INT) BEGIN BEGIN INDEPENDENT TRANSACTION DELETE FROM /shared/new_folder/new_view; INSERT INTO /shared/new_folder/new_view ( rowId , rowNumber , day , YEAR , WW , abc , pqr , xyz ) SELECT rowId , rowNumber , day , YEAR , WW , abc , pqr , xyz FROM /shared/new_folder/old_view ; COMMIT; EXCEPTION ELSE ... ROLLBACK; RAISE; END; ENDBut it causes an error as below:
ERROR [jetty thread pool-261305] 2024-01-02 02:47:24.849 -0800 Util - null com.compositesw.common.script.ScriptException: A system exception has occurred. at AnonymousProcedure (line 40) at AnonymousProcedure (line 11) caused by: com.compositesw.common.CompositeRuntimeException [script-1900011] at com.compositesw.server.script.ScriptInstance.handleException(ScriptInstance.java:1007) ~[csserver.jar:?] at com.compositesw.server.script.ScriptInstance.execute(ScriptInstance.java:852) ~[csserver.jar:?] at com.compositesw.server.script.ScriptInstance.invoke(ScriptInstance.java:192) ~[csserver.jar:?] at com.compositesw.cdms.webapi.service.WProcResultImpl$InvokerThread.run(WProcResultImpl.java:760) ~[cswebapi-server.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?] at java.lang.Thread.run(Thread.java:834) [?:?] Caused by: com.compositesw.common.CompositeRuntimeException at com.compositesw.common.CompositeRuntimeException.rethrow(CompositeRuntimeException.java:143) ~[cscommon.jar:?] at com.compositesw.server.qe.QueryEngine.generateQueryPlan(SourceFile:858) ~[csqe.jar:?] at com.compositesw.server.qe.logical.SubQueryPlanGenerator.a(SourceFile:292) ~[csqe.jar:?] at com.compositesw.server.qe.logical.SubQueryPlanGenerator.a(SourceFile:153) ~[csqe.jar:?] at com.compositesw.server.qe.logical.SubQueryPlanGenerator.process(SourceFile:110) ~[csqe.jar:?] at com.compositesw.server.qe.logical.InsertLogicalPlanGenerator.buildLogicalPlan(SourceFile:86) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.a(SourceFile:1129) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$b.a(SourceFile:1905) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.execute(SourceFile:458) ~[csqe.jar:?] at com.compositesw.server.qe.QESqlRequest.execute(SourceFile:156) ~[csqe.jar:?] at com.compositesw.server.script.util.ScriptCursorValue.execute(ScriptCursorValue.java:375) ~[csserver.jar:?] at com.compositesw.server.script.steps.SQLStep.invoke(SQLStep.java:103) ~[csserver.jar:?] at com.compositesw.server.script.ScriptInstance.execute(ScriptInstance.java:789) ~[csserver.jar:?] ... 5 more Caused by: java.lang.IllegalStateException at com.compositesw.server.qe.QueryEngine$a.a(SourceFile:2323) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$b.a(SourceFile:1946) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.generateQueryPlan(SourceFile:853) ~[csqe.jar:?] at com.compositesw.server.qe.logical.SubQueryPlanGenerator.a(SourceFile:292) ~[csqe.jar:?] at com.compositesw.server.qe.logical.SubQueryPlanGenerator.a(SourceFile:153) ~[csqe.jar:?] at com.compositesw.server.qe.logical.SubQueryPlanGenerator.process(SourceFile:110) ~[csqe.jar:?] at com.compositesw.server.qe.logical.InsertLogicalPlanGenerator.buildLogicalPlan(SourceFile:86) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.a(SourceFile:1129) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$b.a(SourceFile:1905) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.execute(SourceFile:458) ~[csqe.jar:?] at com.compositesw.server.qe.QESqlRequest.execute(SourceFile:156) ~[csqe.jar:?] at com.compositesw.server.script.util.ScriptCursorValue.execute(ScriptCursorValue.java:375) ~[csserver.jar:?] at com.compositesw.server.script.steps.SQLStep.invoke(SQLStep.java:103) ~[csserver.jar:?] at com.compositesw.server.script.ScriptInstance.execute(ScriptInstance.java:789) ~[csserver.jar:?] ... 5 more Caused by: com.compositesw.common.CompositeRuntimeException at com.compositesw.common.CompositeRuntimeException.rethrow(CompositeRuntimeException.java:143) ~[cscommon.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:1857) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:1786) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.getFromNode(SourceFile:823) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:752) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.generateLogicalPlan(SourceFile:218) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.a(SourceFile:1212) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.a(SourceFile:1015) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$PlanOptimizer.call(SourceFile:2275) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$PlanOptimizer.call(SourceFile:2251) ~[csqe.jar:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?] ... 3 more Caused by: java.lang.NullPointerException at com.compositesw.server.qe.logical.operator.Relation.a(SourceFile:113) ~[csqe.jar:?] at com.compositesw.server.qe.logical.operator.Relation.isStoredProcedure(SourceFile:96) ~[csqe.jar:?] at com.compositesw.server.qe.logical.operator.Relation.isStoredProcedureWithColumnReferences(SourceFile:117) ~[csqe.jar:?] at com.compositesw.server.qe.logical.operator.Join.isProcedureJoin(SourceFile:254) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.getFromNode(SourceFile:996) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:752) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.getFromNode(SourceFile:952) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.getFromNode(SourceFile:990) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:752) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.generateLogicalPlan(SourceFile:218) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:1834) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:1786) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.getFromNode(SourceFile:823) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.a(SourceFile:752) ~[csqe.jar:?] at com.compositesw.server.qe.logical.LogicalPlanGenerator.generateLogicalPlan(SourceFile:218) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.a(SourceFile:1212) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine.a(SourceFile:1015) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$PlanOptimizer.call(SourceFile:2275) ~[csqe.jar:?] at com.compositesw.server.qe.QueryEngine$PlanOptimizer.call(SourceFile:2251) ~[csqe.jar:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?] ... 3 moreUse the following resolution to address issues like the one discussed above.
PROCEDURE testProc(OUT num INT) BEGIN BEGIN INDEPENDENT TRANSACTION declare q cursor(a varchar ,b int,c varchar,d varchar,e varchar,f varchar,g varchar,h varchar); open q for 'SELECT rowId , rowNumber , day , YEAR , WW , abc , pqr , xyz FROM /shared/new_folder/old_view ; DELETE FROM /shared/new_folder/new_view; INSERT INTO /shared/new_folder/new_view ( rowId , rowNumber , day , YEAR , WW , abc , pqr , xyz ) SELECT * from q ; COMMIT; EXCEPTION ELSE ... ROLLBACK; RAISE; END; END