db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Deepa Remesh (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (DERBY-1585) derbylang/procedureInTrigger: not able to create trigger due to an open ResultSet
Date Mon, 25 Sep 2006 19:34:51 GMT
    [ http://issues.apache.org/jira/browse/DERBY-1585?page=comments#action_12437653 ] 
            
Deepa Remesh commented on DERBY-1585:
-------------------------------------

I had earlier said:
"In the code, the result set returned from executing the trigger action statement is closed.
GenericTriggerExecutor.executeSPS fetches all rows and closes the result set. So the problem
seems to be elsewhere."

What I had previously stated is not fully correct. Result set returned by executing the trigger
action statement (in this case the call statement) is closed. But the result set which is
closed is the internal CallStatementResultSet. 
The result set returned by the procedure is not closed. It may get closed if it is garbage
collected. However, if the result set remains open, a subsequent trigger creation will fail
with following error:
ERROR X0X95: Operation 'CREATE TRIGGER' cannot be performed on object 'T1' because there is
an open ResultSet dependent on that object. 




> derbylang/procedureInTrigger: not able to create trigger due to an open ResultSet
> ---------------------------------------------------------------------------------
>
>                 Key: DERBY-1585
>                 URL: http://issues.apache.org/jira/browse/DERBY-1585
>             Project: Derby
>          Issue Type: Bug
>          Components: Test, Regression Test Failure
>    Affects Versions: 10.2.1.5
>         Environment: ------------------ Java Information ------------------
> Java Version:    1.6.0-rc
> Java Vendor:     Sun Microsystems Inc.
> Java home:       /usr/local/java/jdk1.6.0_b91/jre
> Java classpath:  /export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/junit.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/dbprocedures.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jmxremote.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/javadbtests.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/Dots.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/mail.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/activation.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/Perfmon.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jakarta-oro-2.0.8.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/commons-logging.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jagops.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jdmkrt.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/db2jcc_license_c.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jet.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jetbatch.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/db2jcc.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jag.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jagclient.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jagutils.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/GenCfg.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jmxremote_optional.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/jmx.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/hadbjdbc4.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyTesting.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derby.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_zh_TW.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbytools.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_ko_KR.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_zh_CN.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_es.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_de_DE.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_ja_JP.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbynet.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_pt_BR.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyclient.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_fr.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyrun.jar:/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyLocale_it.jar:
> OS name:         Linux
> OS architecture: i386
> OS version:      2.6.9-34.ELsmp
> java.specification.name: Java Platform API Specification
> java.specification.version: 1.6
> --------- Derby Information --------
> JRE - JDBC: Java SE 6 - JDBC 4.0
> [/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derby.jar] 10.2.0.4 alpha
- (423199)
> [/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbytools.jar] 10.2.0.4 alpha
- (423199)
> [/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbynet.jar] 10.2.0.4 alpha
- (423199)
> [/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/derbyclient.jar] 10.2.0.4
alpha - (423199)
> [/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/db2jcc_license_c.jar]
2.4 - (17)
> [/export/home/tmp/jagtmp/autoderbyN_regression/install/lib/test/db2jcc.jar] 2.4 - (17)
> ------------------------------------------------------
> ----------------- Locale Information -----------------
> Current Locale :  [English/United States [en_US]]
> Found support for locale: [de_DE]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [es]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [fr]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [it]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [ja_JP]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [ko_KR]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [pt_BR]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [zh_CN]
> 	 version: 10.2.0.4 alpha - (423199)
> Found support for locale: [zh_TW]
> 	 version: 10.2.0.4 alpha - (423199)
> ------------------------------------------------------
>            Reporter: Henri van de Scheur
>         Assigned To: Deepa Remesh
>             Fix For: 10.2.2.0
>
>         Attachments: derby1585_v1.diff, derby1585_v1.status
>
>
> ********* Diff file derbyall/derbylang/procedureInTrigger.diff
> *** Start: procedureInTrigger jdk1.6.0-rc derbyall:derbylang 2006-07-19 13:52:20 ***
> 714a715,730
> > ERROR X0X95: Operation 'CREATE TRIGGER' cannot be performed on object 'T1' because
there is an open ResultSet dependent on that object.
> > ij> --- delete a row. check that trigger is fired - procedure should be called
once
> > delete from t1 where i=10;
> > 1 row inserted/updated/deleted
> > ij> --- check delete is successful
> > select * from t1;
> > I          |B              
> > ---------------------------
> > 5          |two            
> > 6          |four           
> > 8          |eight          
> > ij> drop trigger select_from_trig_table;
> > ERROR 42X94: TRIGGER 'SELECT_FROM_TRIG_TABLE' does not exist.
> > ij> --- use procedures which alter/drop trigger table and some other table
> > create trigger alter_table_trig AFTER delete on t1 
> > 	for each STATEMENT mode db2sql call alter_table_proc();
> 716,732d731
> < ij> --- delete a row. check that trigger is fired - procedure should be called
once
> < delete from t1 where i=10;
> < selectRows - 1 arg - 1 rs
> < 1 row inserted/updated/deleted
> < ij> --- check delete is successful
> < select * from t1;
> < I          |B              
> < ---------------------------
> < 5          |two            
> < 6          |four           
> < 8          |eight          
> < ij> drop trigger select_from_trig_table;
> < 0 rows inserted/updated/deleted
> < ij> --- use procedures which alter/drop trigger table and some other table
> < create trigger alter_table_trig AFTER delete on t1 
> < 	for each STATEMENT mode db2sql call alter_table_proc();
> < 0 rows inserted/updated/deleted
> Test Failed.
> *** End:   procedureInTrigger jdk1.6.0-rc derbyall:derbylang 2006-07-19 13:52:34 ***

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

Mime
View raw message