[
https://issues.apache.org/jira/browse/SLING-5602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Carsten Ziegeler resolved SLING-5602.
-------------------------------------
Resolution: Fixed
Ok, let's assume we fixed it
> The Discovery module does not work any more after a ResourceResolverFactory
> reactivation
> ----------------------------------------------------------------------------------------
>
> Key: SLING-5602
> URL: https://issues.apache.org/jira/browse/SLING-5602
> Project: Sling
> Issue Type: Bug
> Components: ResourceResolver
> Affects Versions: Resource Resolver 1.4.8
> Reporter: Radu Cotescu
> Assignee: Carsten Ziegeler
> Priority: Blocker
> Fix For: Resource Resolver 1.4.10
>
>
> The Discovery module does not work any more after the Resource Resolver
> Factory is reconfigured. To reproduce this start the latest launchpad (built
> from
> https://github.com/apache/sling/blob/c441d5b672d1952a82a1c9fe1e6d81e86cec0018/launchpad/builder/src/main/provisioning/sling.txt)
> and then:
> # go to
> http://localhost:8080/system/console/configMgr/org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl
> # click on save (this will trigger the component's reactivation)
> # check the error log
> {noformat}
> 14.03.2016 16:29:57.331 *ERROR*
> [discovery.connectors.common.runner.7fd8d00a-802a-4367-a384-64024e28dbbc.discoveryLiteCheck]
> org.apache.sling.discovery.oak.cluster.OakClusterViewService
> getLocalClusterView: repository exception: java.lang.Exception: Could not
> adapt resourceResolver to session:
> org.apache.sling.resourceresolver.impl.ResourceResolverImpl@499d9cc9
> java.lang.Exception: Could not adapt resourceResolver to session:
> org.apache.sling.resourceresolver.impl.ResourceResolverImpl@499d9cc9
> at
> org.apache.sling.discovery.commons.providers.spi.base.DiscoveryLiteDescriptor.getDescriptorFrom(DiscoveryLiteDescriptor.java:41)
> at
> org.apache.sling.discovery.oak.cluster.OakClusterViewService.getLocalClusterView(OakClusterViewService.java:111)
> at
> org.apache.sling.discovery.base.commons.BaseDiscoveryService.getTopology(BaseDiscoveryService.java:77)
> at
> org.apache.sling.discovery.oak.OakDiscoveryService.checkForTopologyChange(OakDiscoveryService.java:657)
> at
> org.apache.sling.discovery.oak.pinger.OakViewChecker.discoveryLiteCheck(OakViewChecker.java:232)
> at
> org.apache.sling.discovery.oak.pinger.OakViewChecker.access$000(OakViewChecker.java:64)
> at
> org.apache.sling.discovery.oak.pinger.OakViewChecker$1.run(OakViewChecker.java:208)
> at
> org.apache.sling.discovery.base.commons.PeriodicBackgroundJob.safelyRun(PeriodicBackgroundJob.java:86)
> at
> org.apache.sling.discovery.base.commons.PeriodicBackgroundJob.run(PeriodicBackgroundJob.java:77)
> at java.lang.Thread.run(Thread.java:745)
> 14.03.2016 16:29:57.332 *INFO*
> [discovery.connectors.common.runner.7fd8d00a-802a-4367-a384-64024e28dbbc.discoveryLiteCheck]
> org.apache.sling.discovery.base.commons.BaseDiscoveryService getTopology:
> undefined cluster view: REPOSITORY_EXCEPTION]
> org.apache.sling.discovery.base.commons.UndefinedClusterViewException:
> Exception while processing descriptor: java.lang.Exception: Could not adapt
> resourceResolver to session:
> org.apache.sling.resourceresolver.impl.ResourceResolverImpl@499d9cc9
> 14.03.2016 16:29:57.332 *INFO*
> [discovery.connectors.common.runner.7fd8d00a-802a-4367-a384-64024e28dbbc.discoveryLiteCheck]
> org.apache.sling.discovery.commons.providers.base.ViewStateManagerImpl
> enqueueForAll: sending topologyEvent TopologyEvent [type=TOPOLOGY_CHANGING,
> oldView=DefaultTopologyView[current=false, num=1,
> instances=7fd8d00a-802a-4367-a384-64024e28dbbc[local=true,leader=true]],
> newView=null], to all (5) listeners
> 14.03.2016 16:29:57.332 *ERROR* [Discovery-AsyncEventSender]
> org.apache.sling.discovery.oak.TopologyWebConsolePlugin
> addDiscoveryLiteHistoryEntry: Exception: java.lang.Exception: Could not adapt
> resourceResolver to session:
> org.apache.sling.resourceresolver.impl.ResourceResolverImpl@149e86f0
> java.lang.Exception: Could not adapt resourceResolver to session:
> org.apache.sling.resourceresolver.impl.ResourceResolverImpl@149e86f0
> at
> org.apache.sling.discovery.commons.providers.spi.base.DiscoveryLiteDescriptor.getDescriptorFrom(DiscoveryLiteDescriptor.java:41)
> at
> org.apache.sling.discovery.oak.TopologyWebConsolePlugin.updateDiscoveryLiteHistory(TopologyWebConsolePlugin.java:771)
> at
> org.apache.sling.discovery.oak.TopologyWebConsolePlugin.handleTopologyEvent(TopologyWebConsolePlugin.java:722)
> at
> org.apache.sling.discovery.commons.providers.base.AsyncTopologyEvent.trigger(AsyncTopologyEvent.java:53)
> at
> org.apache.sling.discovery.commons.providers.base.AsyncEventSender.run(AsyncEventSender.java:118)
> at java.lang.Thread.run(Thread.java:745)
> {noformat}
> The Discovery module will not recover from this state. Furthermore it will
> also prevent the RRF to reactivate and basically makes the instance unusable.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)