in src/main/java/org/apache/sling/discovery/oak/cluster/OakClusterViewService.java [133:165]
public LocalClusterView getLocalClusterView() throws UndefinedClusterViewException {
logger.trace("getLocalClusterView: start");
ResourceResolver resourceResolver = null;
try {
DiscoveryLiteDescriptor descriptor = null;
try{
resourceResolver = getResourceResolver();
descriptor = DiscoveryLiteDescriptor.getDescriptorFrom(resourceResolver);
} catch (Exception e) {
// SLING-10204 : log less noisy as this can legitimately happen
logger.warn("getLocalClusterView: got Exception (enable debug logging to see stacktrace) : " + e);
logger.debug("getLocalClusterView: Exception stacktrace", e);
throw new UndefinedClusterViewException(Reason.REPOSITORY_EXCEPTION, "Exception while processing descriptor: "+e);
}
if (lastSeqNum!=descriptor.getSeqNum()) {
logger.info("getLocalClusterView: sequence number change detected - clearing idmap cache");
idMapService.clearCache();
lastSeqNum = descriptor.getSeqNum();
}
return asClusterView(descriptor, resourceResolver);
} catch (UndefinedClusterViewException e) {
logger.info("getLocalClusterView: undefined clusterView: "+e.getReason()+" - "+e.getMessage());
throw e;
} catch (Exception e) {
logger.error("getLocalClusterView: repository exception: "+e, e);
throw new UndefinedClusterViewException(Reason.REPOSITORY_EXCEPTION, "Exception while processing descriptor: "+e);
} finally {
logger.trace("getLocalClusterView: end");
if (resourceResolver!=null) {
resourceResolver.close();
}
}
}