You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by st...@apache.org on 2015/01/26 09:49:31 UTC
svn commit: r1654740 -
/sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/topology/TopologyViewImpl.java
Author: stefanegli
Date: Mon Jan 26 08:49:31 2015
New Revision: 1654740
URL: http://svn.apache.org/r1654740
Log:
SLING-3726 : added comment about inconsistent state in /var/discovery/impl to cause duplicate instances lack of SLING-4139 being fixed
Modified:
sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/topology/TopologyViewImpl.java
Modified: sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/topology/TopologyViewImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/topology/TopologyViewImpl.java?rev=1654740&r1=1654739&r2=1654740&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/topology/TopologyViewImpl.java (original)
+++ sling/trunk/bundles/extensions/discovery/impl/src/main/java/org/apache/sling/discovery/impl/topology/TopologyViewImpl.java Mon Jan 26 08:49:31 2015
@@ -175,6 +175,16 @@ public class TopologyViewImpl implements
for (Iterator<InstanceDescription> it2 = this.instances.iterator(); it2.hasNext();) {
InstanceDescription existingInstance = it2.next();
if (existingInstance.getSlingId().equals(instanceDescription.getSlingId())) {
+ // SLING-3726:
+ // while 'normal duplicate instances' are filtered out here correctly,
+ // 'hidden duplicate instances' that are added via this instanceDescription's
+ // cluster, are not caught.
+ // there is, however, no simple fix for this. Since the reason is
+ // inconsistent state information in /var/discovery/impl - either
+ // due to stale-announcements (SLING-4139) - or by some manualy
+ // copying of data from one cluster to the next (which will also
+ // be cleaned up by SLING-4139 though)
+ // so the fix for avoiding duplicate instances is really SLING-4139
logger.info("addInstance: cannot add same instance twice: "
+ instanceDescription);
continue outerLoop;