diff --git a/core/api/src/main/java/org/onlab/onos/store/service/VersionedValue.java b/core/api/src/main/java/org/onlab/onos/store/service/VersionedValue.java
index 72c5bcd..9a78252 100644
--- a/core/api/src/main/java/org/onlab/onos/store/service/VersionedValue.java
+++ b/core/api/src/main/java/org/onlab/onos/store/service/VersionedValue.java
@@ -2,6 +2,8 @@
 
 import java.util.Arrays;
 
+import org.onlab.util.ByteArraySizeHashPrinter;
+
 import com.google.common.base.MoreObjects;
 
 /**
@@ -64,7 +66,7 @@
     public String toString() {
         return MoreObjects.toStringHelper(getClass())
                 .add("version", version)
-                .add("value", value != null ? "[" + value.length + " bytes]" : value)
+                .add("value", ByteArraySizeHashPrinter.orNull(value))
                 .toString();
     }
 }
diff --git a/core/api/src/main/java/org/onlab/onos/store/service/WriteRequest.java b/core/api/src/main/java/org/onlab/onos/store/service/WriteRequest.java
index 3800a83..d687fa5 100644
--- a/core/api/src/main/java/org/onlab/onos/store/service/WriteRequest.java
+++ b/core/api/src/main/java/org/onlab/onos/store/service/WriteRequest.java
@@ -6,6 +6,8 @@
 
 import java.util.Objects;
 
+import org.onlab.util.ByteArraySizeHashPrinter;
+
 import com.google.common.base.MoreObjects;
 
 /**
@@ -185,13 +187,13 @@
 
     @Override
     public String toString() {
-        return MoreObjects.toStringHelper(getClass())
+         return MoreObjects.toStringHelper(getClass())
                 .add("type", type)
                 .add("tableName", tableName)
                 .add("key", key)
-                .add("newValue", newValue != null ? "[" + newValue.length + " bytes]" : newValue)
+                .add("newValue", ByteArraySizeHashPrinter.orNull(newValue))
                 .add("previousVersion", previousVersion)
-                .add("oldValue", oldValue != null ? "[" + oldValue.length + " bytes]" : oldValue)
+                .add("oldValue", ByteArraySizeHashPrinter.orNull(oldValue))
                 .toString();
     }
 
