Author: reschke
Date: Wed Apr 20 11:33:40 2016
New Revision: 1740116
URL: http://svn.apache.org/viewvc?rev=1740116&view=rev
Log:
OAK-4250: add test coverage for find() with ultra-long keys, also avoid
misleading ERROR logging in RDBDocumentStore
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStoreJDBC.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/BasicDocumentStoreTest.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStoreJDBC.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStoreJDBC.java?rev=1740116&r1=1740115&r2=1740116&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStoreJDBC.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStoreJDBC.java
Wed Apr 20 11:33:40 2016
@@ -604,7 +604,7 @@ public class RDBDocumentStoreJDBC {
rows.add(row);
}
} catch (SQLException ex) {
- LOG.error("attempting to read " + keys, ex);
+ LOG.debug("attempting to read " + keys, ex);
// DB2 throws an SQLException for invalid keys; handle this
more
// gracefully
if ("22001".equals(ex.getSQLState())) {
@@ -664,7 +664,7 @@ public class RDBDocumentStoreJDBC {
return null;
}
} catch (SQLException ex) {
- LOG.error("attempting to read " + id + " (id length is " +
id.length() + ")", ex);
+ LOG.debug("attempting to read " + id + " (id length is " +
id.length() + ")", ex);
// DB2 throws an SQLException for invalid keys; handle this more
// gracefully
if ("22001".equals(ex.getSQLState())) {
Modified:
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/BasicDocumentStoreTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/BasicDocumentStoreTest.java?rev=1740116&r1=1740115&r2=1740116&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/BasicDocumentStoreTest.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/document/BasicDocumentStoreTest.java
Wed Apr 20 11:33:40 2016
@@ -268,6 +268,18 @@ public class BasicDocumentStoreTest exte
testMaxId(false);
}
+ @Test
+ public void testLongId() {
+ String id = "0:/" + generateId(2048, true);
+ assertNull("find() with ultra-long id needs to return 'null'",
super.ds.find(Collection.NODES, id));
+
+ if (! super.dsname.contains("Memory")) {
+ UpdateOp up = new UpdateOp(id, true);
+ up.set("_id", id);
+ assertFalse("create() with ultra-long id needs to fail",
super.ds.create(Collection.NODES, Collections.singletonList(up)));
+ }
+ }
+
private int testMaxId(boolean ascii) {
int min = 0;
int max = 32768;