You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by mr...@apache.org on 2017/03/15 13:00:36 UTC
svn commit: r1787043 - in
/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version:
InternalVersionHistoryImpl.java InternalVersionImpl.java
Author: mreutegg
Date: Wed Mar 15 13:00:36 2017
New Revision: 1787043
URL: http://svn.apache.org/viewvc?rev=1787043&view=rev
Log:
JCR-4121: ConcurrentModificationException in InternalVersionHistoryImpl.fixLegacy()
Modified:
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java?rev=1787043&r1=1787042&r2=1787043&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java Wed Mar 15 13:00:36 2017
@@ -167,7 +167,7 @@ class InternalVersionHistoryImpl extends
// fix legacy
private void fixLegacy() throws RepositoryException {
if (rootVersion.getSuccessors().isEmpty()) {
- for (Name versionName : nameCache.keySet()) {
+ for (Name versionName : getVersionNames()) {
InternalVersionImpl v = createVersionInstance(versionName);
v.legacyResolveSuccessors();
}
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java?rev=1787043&r1=1787042&r2=1787043&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java Wed Mar 15 13:00:36 2017
@@ -441,7 +441,10 @@ class InternalVersionImpl extends Intern
for (InternalValue value : values) {
InternalVersionImpl v = (InternalVersionImpl)
versionHistory.getVersion(value.getNodeId());
- v.internalAddSuccessor(this, false);
+ // version may be null if history is broken
+ if (v != null) {
+ v.internalAddSuccessor(this, false);
+ }
}
}
}