Author: reschke
Date: Tue Feb 27 13:16:09 2018
New Revision: 1825442

URL: http://svn.apache.org/viewvc?rev=1825442&view=rev
Log:
OAK-7289: RDBDocumentStore: potential NPE in error handling code

Modified:
    
jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java

Modified: 
jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java?rev=1825442&r1=1825441&r2=1825442&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java
 Tue Feb 27 13:16:09 2018
@@ -1949,7 +1949,7 @@ public class RDBDocumentStore implements
         } catch (SQLException ex) {
             this.ch.rollbackConnection(connection);
             String addDiags = "";
-            if (RDBJDBCTools.matchesSQLState(ex, "22", "72")) {
+            if (data != null && RDBJDBCTools.matchesSQLState(ex, "22", "72")) {
                 byte[] bytes = asBytes(data);
                 addDiags = String.format(" (DATA size in Java characters: %d, 
in octets: %d, computed character limit: %d)",
                         data.length(), bytes.length, 
tmd.getDataLimitInOctets() / CHAR2OCTETRATIO);
@@ -2058,7 +2058,7 @@ public class RDBDocumentStore implements
     private static final boolean BATCHUPDATES = Boolean.parseBoolean(System
             
.getProperty("org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentStore.BATCHUPDATES",
 "true"));
 
-    public static byte[] asBytes(String data) {
+    public static byte[] asBytes(@Nonnull String data) {
         byte[] bytes;
         try {
             bytes = data.getBytes("UTF-8");


Reply via email to