You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by re...@apache.org on 2011/09/29 12:14:00 UTC
svn commit: r1177249 -
/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerBase.java
Author: reschke
Date: Thu Sep 29 10:14:00 2011
New Revision: 1177249
URL: http://svn.apache.org/viewvc?rev=1177249&view=rev
Log:
JCR-3085: better diagnostics when version storage is broken (produce a RepositoryException instead of a NPE, including the nodeId)
Modified:
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerBase.java
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerBase.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerBase.java?rev=1177249&r1=1177248&r2=1177249&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerBase.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerBase.java Thu Sep 29 10:14:00 2011
@@ -681,6 +681,13 @@ abstract class InternalVersionManagerBas
} else {
// 1. search a predecessor, suitable for generating the new name
InternalValue[] values = node.getPropertyValues(NameConstants.JCR_PREDECESSORS);
+
+ if (values == null) {
+ String message = "Mandatory jcr:predecessors property missing on node " + node.getNodeId();
+ log.error(message);
+ throw new VersionException(message);
+ }
+
for (InternalValue value: values) {
InternalVersion pred = history.getVersion(value.getNodeId());
if (best == null