You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by re...@apache.org on 2016/03/18 13:49:21 UTC

svn commit: r1735592 - in /jackrabbit/oak/branches/1.4: ./ oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java

Author: reschke
Date: Fri Mar 18 12:49:20 2016
New Revision: 1735592

URL: http://svn.apache.org/viewvc?rev=1735592&view=rev
Log:
OAK-4134: RDBBlobStore: improve error handling and logging (ported to 1.4)

Modified:
    jackrabbit/oak/branches/1.4/   (props changed)
    jackrabbit/oak/branches/1.4/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java

Propchange: jackrabbit/oak/branches/1.4/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Mar 18 12:49:20 2016
@@ -1,3 +1,3 @@
 /jackrabbit/oak/branches/1.0:1665962
-/jackrabbit/oak/trunk:1733615,1733875,1733913,1734230,1734254,1735052,1735405,1735484
+/jackrabbit/oak/trunk:1733615,1733875,1733913,1734230,1734254,1735052,1735405,1735484,1735588
 /jackrabbit/trunk:1345480

Modified: jackrabbit/oak/branches/1.4/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.4/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java?rev=1735592&r1=1735591&r2=1735592&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.4/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java (original)
+++ jackrabbit/oak/branches/1.4/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBBlobStore.java Fri Mar 18 12:49:20 2016
@@ -277,7 +277,11 @@ public class RDBBlobStore extends Cachin
                     try {
                         prep.setString(1, id);
                         prep.setBytes(2, data);
-                        prep.execute();
+                        int rows = prep.executeUpdate();
+                        LOG.trace("insert-data id={} rows={}", id, rows);
+                        if (rows != 1) {
+                            throw new SQLException("Insert of id " + id + " into " + this.tnData + " failed with result " + rows);
+                        }
                     } finally {
                         prep.close();
                     }
@@ -319,7 +323,11 @@ public class RDBBlobStore extends Cachin
                         prep.setString(1, id);
                         prep.setInt(2, level);
                         prep.setLong(3, now);
-                        prep.execute();
+                        int rows = prep.executeUpdate();
+                        LOG.trace("insert-meta id={} rows={}", id, rows);
+                        if (rows != 1) {
+                            throw new SQLException("Insert of id " + id + " into " + this.tnMeta + " failed with result " + rows);
+                        }
                     } finally {
                         prep.close();
                     }
@@ -467,9 +475,11 @@ public class RDBBlobStore extends Cachin
 
             for (String id : ids) {
                 prepDelMeta.setString(1, id);
-                prepDelMeta.execute();
+                int mrows = prepDelMeta.executeUpdate();
+                LOG.trace("delete-meta id={} rows={}", id, mrows);
                 prepDelData.setString(1, id);
-                prepDelData.execute();
+                int drows = prepDelData.executeUpdate();
+                LOG.trace("delete-data id={} rows={}", id, drows);
                 count++;
             }
             prepDelMeta.close();
@@ -525,7 +535,9 @@ public class RDBBlobStore extends Cachin
                 }
 
                 int deletedMeta = prepMeta.executeUpdate();
+                LOG.trace("delete-meta rows={}", deletedMeta);
                 int deletedData = prepData.executeUpdate();
+                LOG.trace("delete-data rows={}", deletedData);
 
                 if (deletedMeta != deletedData) {
                     String message = String.format(