[jira] [Resolved] (STORM-3944) ConcurrentModificationException in MultiCountMetric

2023-08-08 Thread Julien Nioche (Jira)


 [ 
https://issues.apache.org/jira/browse/STORM-3944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Julien Nioche resolved STORM-3944.
--
Resolution: Fixed

> ConcurrentModificationException  in MultiCountMetric
> 
>
> Key: STORM-3944
> URL: https://issues.apache.org/jira/browse/STORM-3944
> Project: Apache Storm
>  Issue Type: Bug
>Affects Versions: 2.5.0
>Reporter: Julien Nioche
>Priority: Major
> Fix For: 2.6
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Came across the following exception 
> {code:java}
> 022-07-15 09:57:16.851 o.a.s.e.e.ReportError Thread-43-fetcher-executor[15, 
> 15] [ERROR] Error
> java.lang.RuntimeException: java.lang.RuntimeException: 
> java.util.ConcurrentModificationException
>   at org.apache.storm.utils.Utils$1.run(Utils.java:411) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at java.lang.Thread.run(Thread.java:829) [?:?]
> Caused by: java.lang.RuntimeException: 
> java.util.ConcurrentModificationException
>   at org.apache.storm.executor.Executor.accept(Executor.java:301) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at 
> org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at 
> org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   ... 1 more
> Caused by: java.util.ConcurrentModificationException
>   at java.util.HashMap$HashIterator.nextNode(HashMap.java:1511) ~[?:?]
>   at java.util.HashMap$EntryIterator.next(HashMap.java:1544) ~[?:?]
>   at java.util.HashMap$EntryIterator.next(HashMap.java:1542) ~[?:?]
>   at 
> org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:35)
>  ~[storm-client-2.4.0.jar:2.4.0]
>   at 
> org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:18)
>  ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.executor.Executor.metricsTick(Executor.java:339) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at 
> org.apache.storm.executor.bolt.BoltExecutor.tupleActionFn(BoltExecutor.java:200)
>  ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.executor.Executor.accept(Executor.java:297) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at 
> org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at 
> org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
> ~[storm-client-2.4.0.jar:2.4.0]
>   ... 1 more
> {code}
> Seems to be a straightforward case of one thread modifying the 
> MultiCountMetric while another one is calling getValueAndReset.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (STORM-3944) ConcurrentModificationException in MultiCountMetric

2023-08-08 Thread Julien Nioche (Jira)


 [ 
https://issues.apache.org/jira/browse/STORM-3944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Julien Nioche updated STORM-3944:
-
Description: 
Came across the following exception 

{code:java}
022-07-15 09:57:16.851 o.a.s.e.e.ReportError Thread-43-fetcher-executor[15, 15] 
[ERROR] Error
java.lang.RuntimeException: java.lang.RuntimeException: 
java.util.ConcurrentModificationException
at org.apache.storm.utils.Utils$1.run(Utils.java:411) 
~[storm-client-2.4.0.jar:2.4.0]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.lang.RuntimeException: java.util.ConcurrentModificationException
at org.apache.storm.executor.Executor.accept(Executor.java:301) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
~[storm-client-2.4.0.jar:2.4.0]
... 1 more
Caused by: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1511) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1544) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1542) ~[?:?]
at 
org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:35)
 ~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:18)
 ~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.executor.Executor.metricsTick(Executor.java:339) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor.tupleActionFn(BoltExecutor.java:200)
 ~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.executor.Executor.accept(Executor.java:297) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
~[storm-client-2.4.0.jar:2.4.0]
... 1 more
{code}

Seems to be a straightforward case of one thread modifying the MultiCountMetric 
while another one is calling getValueAndReset.


  was:
Came across the following exception 

{code:java}
022-07-15 09:57:16.851 o.a.s.e.e.ReportError Thread-43-fetcher-executor[15, 15] 
[ERROR] Error
java.lang.RuntimeException: java.lang.RuntimeException: 
java.util.ConcurrentModificationException
at org.apache.storm.utils.Utils$1.run(Utils.java:411) 
~[storm-client-2.4.0.jar:2.4.0]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.lang.RuntimeException: java.util.ConcurrentModificationException
at org.apache.storm.executor.Executor.accept(Executor.java:301) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
~[storm-client-2.4.0.jar:2.4.0]
... 1 more
Caused by: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1511) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1544) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1542) ~[?:?]
at 
org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:35)
 ~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:18)
 ~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.executor.Executor.metricsTick(Executor.java:339) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor.tupleActionFn(BoltExecutor.java:200)
 ~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.executor.Executor.accept(Executor.java:297) 
~[storm-client-2.4.0.jar:2.4.0]
at 

[jira] [Created] (STORM-3944) ConcurrentModificationException in MultiCountMetric

2023-08-08 Thread Julien Nioche (Jira)
Julien Nioche created STORM-3944:


 Summary: ConcurrentModificationException  in MultiCountMetric
 Key: STORM-3944
 URL: https://issues.apache.org/jira/browse/STORM-3944
 Project: Apache Storm
  Issue Type: Bug
Affects Versions: 2.5.0
Reporter: Julien Nioche
 Fix For: 2.6


Came across the following exception 

{code:java}
022-07-15 09:57:16.851 o.a.s.e.e.ReportError Thread-43-fetcher-executor[15, 15] 
[ERROR] Error
java.lang.RuntimeException: java.lang.RuntimeException: 
java.util.ConcurrentModificationException
at org.apache.storm.utils.Utils$1.run(Utils.java:411) 
~[storm-client-2.4.0.jar:2.4.0]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.lang.RuntimeException: java.util.ConcurrentModificationException
at org.apache.storm.executor.Executor.accept(Executor.java:301) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
~[storm-client-2.4.0.jar:2.4.0]
... 1 more
Caused by: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1511) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1544) ~[?:?]
at java.util.HashMap$EntryIterator.next(HashMap.java:1542) ~[?:?]
at 
org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:35)
 ~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.metric.api.MultiCountMetric.getValueAndReset(MultiCountMetric.java:18)
 ~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.executor.Executor.metricsTick(Executor.java:339) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor.tupleActionFn(BoltExecutor.java:200)
 ~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.executor.Executor.accept(Executor.java:297) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:154) 
~[storm-client-2.4.0.jar:2.4.0]
at 
org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java:140) 
~[storm-client-2.4.0.jar:2.4.0]
at org.apache.storm.utils.Utils$1.run(Utils.java:396) 
~[storm-client-2.4.0.jar:2.4.0]
... 1 more
{code}

Seems to be a straightforward case of 2 or more threads concurrently 
_getValueAndReset_




--
This message was sent by Atlassian Jira
(v8.20.10#820010)