You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ka...@apache.org on 2007/07/13 14:06:11 UTC
svn commit: r555960 -
/db/derby/code/trunk/java/client/org/apache/derby/client/am/CallableLocatorProcedures.java
Author: kahatlen
Date: Fri Jul 13 05:06:10 2007
New Revision: 555960
URL: http://svn.apache.org/viewvc?view=rev&rev=555960
Log:
DERBY-2932: Connection.createClob() and Connection.createBlob() throw
a procedure not found exception and do not switch to non-locator code
upon soft upgrade
Fix contributed by V. Narayanan.
Modified:
db/derby/code/trunk/java/client/org/apache/derby/client/am/CallableLocatorProcedures.java
Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/CallableLocatorProcedures.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/CallableLocatorProcedures.java?view=diff&rev=555960&r1=555959&r2=555960
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/CallableLocatorProcedures.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/CallableLocatorProcedures.java Fri Jul 13 05:06:10 2007
@@ -112,19 +112,18 @@
return INVALID_LOCATOR;
}
- if (blobCreateLocatorCall == null) {
- blobCreateLocatorCall = connection.prepareCallX
- ("? = CALL SYSIBM.BLOBCREATELOCATOR()",
- java.sql.ResultSet.TYPE_FORWARD_ONLY,
- java.sql.ResultSet.CONCUR_READ_ONLY,
- connection.holdability());
- blobCreateLocatorCall
- .registerOutParameterX(1, java.sql.Types.INTEGER);
- // Make sure this statement does not commit user transaction
- blobCreateLocatorCall.isAutoCommittableStatement_ = false;
- }
-
try {
+ if (blobCreateLocatorCall == null) {
+ blobCreateLocatorCall = connection.prepareCallX
+ ("? = CALL SYSIBM.BLOBCREATELOCATOR()",
+ java.sql.ResultSet.TYPE_FORWARD_ONLY,
+ java.sql.ResultSet.CONCUR_READ_ONLY,
+ connection.holdability());
+ blobCreateLocatorCall
+ .registerOutParameterX(1, java.sql.Types.INTEGER);
+ // Make sure this statement does not commit user transaction
+ blobCreateLocatorCall.isAutoCommittableStatement_ = false;
+ }
blobCreateLocatorCall.executeX();
}
catch(SqlException sqle) {
@@ -590,19 +589,18 @@
return INVALID_LOCATOR;
}
- if (clobCreateLocatorCall == null) {
- clobCreateLocatorCall = connection.prepareCallX
- ("? = CALL SYSIBM.CLOBCREATELOCATOR()",
- java.sql.ResultSet.TYPE_FORWARD_ONLY,
- java.sql.ResultSet.CONCUR_READ_ONLY,
- java.sql.ResultSet.CLOSE_CURSORS_AT_COMMIT);
- clobCreateLocatorCall
- .registerOutParameterX(1, java.sql.Types.INTEGER);
- // Make sure this statement does not commit user transaction
- clobCreateLocatorCall.isAutoCommittableStatement_ = false;
- }
-
try {
+ if (clobCreateLocatorCall == null) {
+ clobCreateLocatorCall = connection.prepareCallX
+ ("? = CALL SYSIBM.CLOBCREATELOCATOR()",
+ java.sql.ResultSet.TYPE_FORWARD_ONLY,
+ java.sql.ResultSet.CONCUR_READ_ONLY,
+ java.sql.ResultSet.CLOSE_CURSORS_AT_COMMIT);
+ clobCreateLocatorCall
+ .registerOutParameterX(1, java.sql.Types.INTEGER);
+ // Make sure this statement does not commit user transaction
+ clobCreateLocatorCall.isAutoCommittableStatement_ = false;
+ }
clobCreateLocatorCall.executeX();
}
catch(SqlException sqle) {