[ http://issues.apache.org/jira/browse/DERBY-639?page=all ]
Deepa Remesh updated DERBY-639:
-------------------------------
Attachment: d639.sql
d639.java
Attaching a repro for this. To see the problem, run d639.sql using ij. The
stored procedure used in the sql is in d639.java.
Currently, the sql runs successfully and the behaviour is same in local and
global transaction. This does not seem right. It should give an error when
executing this procedure in a global transaction.
> Statements in stored procedures with holdable cursor should not be allowed to
> execute in xa global transaction
> --------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-639
> URL: http://issues.apache.org/jira/browse/DERBY-639
> Project: Derby
> Type: Bug
> Components: JDBC
> Versions: 10.2.0.0
> Reporter: Deepa Remesh
> Attachments: d639.java, d639.sql
>
> Execution of statements with HOLD_CURSORS_OVER_COMMIT must not be allowed in
> a global transaction. Currently, this is allowed when the statement is inside
> a stored procedure.
> e.g: The following procedure should throw an error when executed inside a
> global transaction. However, no error is thrown when running with embedded or
> client drivers.
> //Java method for stored procedure with HOLD_CURSORS_OVER_COMMIT
> public static void testHoldCursorsProc(ResultSet[] rs) throws Exception
> {
> Connection conn =
> DriverManager.getConnection("jdbc:default:connection");
> //HOLD_CURSORS_OVER_COMMIT
> Statement st =
> conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE ,
> ResultSet.CONCUR_READ_ONLY,
> ResultSet.HOLD_CURSORS_OVER_COMMIT);
> rs[0] = st.executeQuery("select * from testtable1");
> }
--
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