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 2008/05/02 20:29:37 UTC

svn commit: r652865 - /db/derby/code/trunk/java/client/org/apache/derby/client/am/LOBStateTracker.java

Author: kahatlen
Date: Fri May  2 11:29:37 2008
New Revision: 652865

URL: http://svn.apache.org/viewvc?rev=652865&view=rev
Log:
DERBY-3658: Made LOBStateTracker work with soft upgraded databases
that don't support locators.

Modified:
    db/derby/code/trunk/java/client/org/apache/derby/client/am/LOBStateTracker.java

Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/LOBStateTracker.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/LOBStateTracker.java?rev=652865&r1=652864&r2=652865&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/LOBStateTracker.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/LOBStateTracker.java Fri May  2 11:29:37 2008
@@ -105,6 +105,12 @@
                     if (locator == this.lastLocatorSeen[i]) {
                         // We are being called on the same row twice...
                         return;
+                    } else if (locator == Lob.INVALID_LOCATOR) {
+                        // The locator is invalid, probably because the
+                        // database is running in soft upgrade mode and
+                        // doesn't have the neccessary stored procedures.
+                        // Don't try to release an invalid locator.
+                        return;
                     }
                     this.lastLocatorSeen[i] = locator;
                     if (this.isBlob[i]) {