[jira] [Commented] (SLING-7371) ResourceProviderTracker.updateProviderContext can cause ConcurrentModificationException

2018-01-10 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-7371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16320621#comment-16320621
 ] 

ASF GitHub Bot commented on SLING-7371:
---

karlpauls closed pull request #2: SLING-7371: synchronize access to the 
handlers inside ResourceProvide…
URL: https://github.com/apache/sling-org-apache-sling-resourceresolver/pull/2
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> ResourceProviderTracker.updateProviderContext can cause 
> ConcurrentModificationException
> ---
>
> Key: SLING-7371
> URL: https://issues.apache.org/jira/browse/SLING-7371
> Project: Sling
>  Issue Type: Bug
>  Components: ResourceResolver
>Affects Versions: Resource Resolver 1.5.32
>Reporter: Karl Pauls
>Assignee: Karl Pauls
> Fix For: Resource Resolver 1.5.34
>
>
> The updateProviderContext method accesses the "handler" member outside of a 
> "synchronized (this.handler)" block which can lead to a 
> ConcurrentModificationException similar to:
> {noformat}
> java.util.ConcurrentModificationException: null
>   at java.util.HashMap$HashIterator.nextNode(HashMap.java:1442)
>   at java.util.HashMap$KeyIterator.next(HashMap.java:1466)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.updateProviderContext(ResourceProviderTracker.java:484)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.activate(ResourceProviderTracker.java:352)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.register(ResourceProviderTracker.java:190)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.access$200(ResourceProviderTracker.java:59)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:130)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:106)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870)
>   at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
>   at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SLING-7371) ResourceProviderTracker.updateProviderContext can cause ConcurrentModificationException

2018-01-10 Thread Karl Pauls (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-7371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319893#comment-16319893
 ] 

Karl Pauls commented on SLING-7371:
---

[~cziegeler], I did see that but it is synchronizing on the same member - 
hence, it shouldn't do any harm and it seemed saver to synchronize inside the 
method to avoid making the same mistake (calling it without the lock) at a 
later point. But I don't fell strongly about it either way - I'll commit it 
synchronizing the call in activate. Thanks!

> ResourceProviderTracker.updateProviderContext can cause 
> ConcurrentModificationException
> ---
>
> Key: SLING-7371
> URL: https://issues.apache.org/jira/browse/SLING-7371
> Project: Sling
>  Issue Type: Bug
>  Components: ResourceResolver
>Affects Versions: Resource Resolver 1.5.32
>Reporter: Karl Pauls
>Assignee: Karl Pauls
> Fix For: Resource Resolver 1.5.34
>
>
> The updateProviderContext method accesses the "handler" member outside of a 
> "synchronized (this.handler)" block which can lead to a 
> ConcurrentModificationException similar to:
> {noformat}
> java.util.ConcurrentModificationException: null
>   at java.util.HashMap$HashIterator.nextNode(HashMap.java:1442)
>   at java.util.HashMap$KeyIterator.next(HashMap.java:1466)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.updateProviderContext(ResourceProviderTracker.java:484)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.activate(ResourceProviderTracker.java:352)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.register(ResourceProviderTracker.java:190)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.access$200(ResourceProviderTracker.java:59)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:130)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:106)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870)
>   at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
>   at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SLING-7371) ResourceProviderTracker.updateProviderContext can cause ConcurrentModificationException

2018-01-10 Thread Carsten Ziegeler (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-7371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319877#comment-16319877
 ] 

Carsten Ziegeler commented on SLING-7371:
-

[~pauls] No :) updateProviderContext is called from two places, one of them is 
already using a synchronized block, the other - activate is not. The  fix is to 
put the sync around the call to updateProviderContext in activate.

> ResourceProviderTracker.updateProviderContext can cause 
> ConcurrentModificationException
> ---
>
> Key: SLING-7371
> URL: https://issues.apache.org/jira/browse/SLING-7371
> Project: Sling
>  Issue Type: Bug
>  Components: ResourceResolver
>Affects Versions: Resource Resolver 1.5.32
>Reporter: Karl Pauls
>Assignee: Karl Pauls
> Fix For: Resource Resolver 1.5.34
>
>
> The updateProviderContext method accesses the "handler" member outside of a 
> "synchronized (this.handler)" block which can lead to a 
> ConcurrentModificationException similar to:
> {noformat}
> java.util.ConcurrentModificationException: null
>   at java.util.HashMap$HashIterator.nextNode(HashMap.java:1442)
>   at java.util.HashMap$KeyIterator.next(HashMap.java:1466)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.updateProviderContext(ResourceProviderTracker.java:484)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.activate(ResourceProviderTracker.java:352)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.register(ResourceProviderTracker.java:190)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.access$200(ResourceProviderTracker.java:59)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:130)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:106)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870)
>   at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
>   at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SLING-7371) ResourceProviderTracker.updateProviderContext can cause ConcurrentModificationException

2018-01-09 Thread Karl Pauls (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-7371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319255#comment-16319255
 ] 

Karl Pauls commented on SLING-7371:
---

[~cziegeler], does this look ok?

> ResourceProviderTracker.updateProviderContext can cause 
> ConcurrentModificationException
> ---
>
> Key: SLING-7371
> URL: https://issues.apache.org/jira/browse/SLING-7371
> Project: Sling
>  Issue Type: Bug
>  Components: ResourceResolver
>Affects Versions: Resource Resolver 1.5.32
>Reporter: Karl Pauls
>Assignee: Karl Pauls
> Fix For: Resource Resolver 1.5.34
>
>
> The updateProviderContext method accesses the "handler" member outside of a 
> "synchronized (this.handler)" block which can lead to a 
> ConcurrentModificationException similar to:
> {noformat}
> java.util.ConcurrentModificationException: null
>   at java.util.HashMap$HashIterator.nextNode(HashMap.java:1442)
>   at java.util.HashMap$KeyIterator.next(HashMap.java:1466)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.updateProviderContext(ResourceProviderTracker.java:484)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.activate(ResourceProviderTracker.java:352)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.register(ResourceProviderTracker.java:190)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.access$200(ResourceProviderTracker.java:59)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:130)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:106)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870)
>   at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
>   at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (SLING-7371) ResourceProviderTracker.updateProviderContext can cause ConcurrentModificationException

2018-01-09 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-7371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319254#comment-16319254
 ] 

ASF GitHub Bot commented on SLING-7371:
---

karlpauls opened a new pull request #2: SLING-7371: synchronize access to the 
handlers inside ResourceProvide…
URL: https://github.com/apache/sling-org-apache-sling-resourceresolver/pull/2
 
 
   …rTracker to avoid a ConcurrentModificationException.


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> ResourceProviderTracker.updateProviderContext can cause 
> ConcurrentModificationException
> ---
>
> Key: SLING-7371
> URL: https://issues.apache.org/jira/browse/SLING-7371
> Project: Sling
>  Issue Type: Bug
>  Components: ResourceResolver
>Affects Versions: Resource Resolver 1.5.32
>Reporter: Karl Pauls
>Assignee: Karl Pauls
> Fix For: Resource Resolver 1.5.34
>
>
> The updateProviderContext method accesses the "handler" member outside of a 
> "synchronized (this.handler)" block which can lead to a 
> ConcurrentModificationException similar to:
> {noformat}
> java.util.ConcurrentModificationException: null
>   at java.util.HashMap$HashIterator.nextNode(HashMap.java:1442)
>   at java.util.HashMap$KeyIterator.next(HashMap.java:1466)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.updateProviderContext(ResourceProviderTracker.java:484)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.activate(ResourceProviderTracker.java:352)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.register(ResourceProviderTracker.java:190)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker.access$200(ResourceProviderTracker.java:59)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:130)
>   at 
> org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker$1.addingService(ResourceProviderTracker.java:106)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870)
>   at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
>   at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
>   at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)