Thanks Carsten, indeed I am hitting SLING-4974. Could you point me to the commit which closes the resource resolvers after the restart of the factory (or after some required providers become unavailable)? I couldn’t find any related commit in https://github.com/apache/sling/commits/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl <https://github.com/apache/sling/commits/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl>. In which version of the resource resolver bundle is that implemented? At least with resource resolver 1.2.4 this is not the case. Thanks, Konrad
> On 14 Sep 2015, at 17:55, Carsten Ziegeler <cziege...@apache.org> wrote: > > Am 14.09.15 um 17:51 schrieb Konrad Windszus: >> Currently if the resource resolver factory is restarted (e.g. because the >> configuration has been changed) all resource resolvers which were being >> requested beforehand become almost useless, because they have no longer any >> providers being bound! This means those resolvers can only be used to >> retrieve the entry points below “/“ but nothing beyond that. >> Therefore if you forget to refresh a resource resolver after the resource >> resolver factory has been restarted you get very weird results. One example >> of this behaviour is being described in >> https://issues.apache.org/jira/browse/SLING-5023. >> What about marking those resource resolvers as invalid (because they do no >> longer have the required resource providers being bound) and let all methods >> being called on those resource resolvers fail with an IllegalStateException? >> That way those kind of programming mistakes would be more obvious! >> Thanks for your opinions on that. >> Konrad >> >> > Hi > > I think you're hitting a dub of SLING-4974 and afaik with the latest > resource resolver impl we mark the resolvers as closed :) > > Carsten > > -- > Carsten Ziegeler > Adobe Research Switzerland > cziege...@apache.org