Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.3.1, 2.4.0, 3.0.0.RC1
-
None
-
None
-
2013-06-18 10:16:09,756 | INFO | l Console Thread | Console | araf.shell.console.jline.Console 200 | 14 - org.apache.karaf.shell.console - 2.3.0.redhat-610-SNAPSHOT | Exception caught while executing command java.util.ConcurrentModificationException at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:394)[:1.7.0_12-ea] at java.util.LinkedHashMap$KeyIterator.next(LinkedHashMap.java:405)[:1.7.0_12-ea] at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1067)[:1.7.0_12-ea] at java.util.AbstractCollection.addAll(AbstractCollection.java:341)[:1.7.0_12-ea] at java.util.HashSet.<init>(HashSet.java:117)[:1.7.0_12-ea] at org.apache.karaf.shell.console.completer.CommandsCompleter.checkData(CommandsCompleter.java:85)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.completer.CommandsCompleter.complete(CommandsCompleter.java:76)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.CompleterAsCompletor.complete(CompleterAsCompletor.java:32)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at jline.console.ConsoleReader.complete(ConsoleReader.java:2918)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at jline.console.ConsoleReader.readLine(ConsoleReader.java:2391)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at jline.console.ConsoleReader.readLine(ConsoleReader.java:2098)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.Console.readAndParseCommand(Console.java:236)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.Console.run(Console.java:172)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.DelayedStarted.run(DelayedStarted.java:61)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT]
It's not easy to reproduce (you have to hit the completion tabs while commands are being registered/unregistered), but the completer is clearly not threadsafe anyway.
2013-06-18 10:16:09,756 | INFO | l Console Thread | Console | araf.shell.console.jline.Console 200 | 14 - org.apache.karaf.shell.console - 2.3.0.redhat-610-SNAPSHOT | Exception caught while executing command java.util.ConcurrentModificationException at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:394)[:1.7.0_12-ea] at java.util.LinkedHashMap$KeyIterator.next(LinkedHashMap.java:405)[:1.7.0_12-ea] at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1067)[:1.7.0_12-ea] at java.util.AbstractCollection.addAll(AbstractCollection.java:341)[:1.7.0_12-ea] at java.util.HashSet.<init>(HashSet.java:117)[:1.7.0_12-ea] at org.apache.karaf.shell.console.completer.CommandsCompleter.checkData(CommandsCompleter.java:85)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.completer.CommandsCompleter.complete(CommandsCompleter.java:76)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.CompleterAsCompletor.complete(CompleterAsCompletor.java:32)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at jline.console.ConsoleReader.complete(ConsoleReader.java:2918)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at jline.console.ConsoleReader.readLine(ConsoleReader.java:2391)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at jline.console.ConsoleReader.readLine(ConsoleReader.java:2098)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.Console.readAndParseCommand(Console.java:236)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.Console.run(Console.java:172)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] at org.apache.karaf.shell.console.jline.DelayedStarted.run(DelayedStarted.java:61)[14:org.apache.karaf.shell.console:2.3.0.redhat-610-SNAPSHOT] It's not easy to reproduce (you have to hit the completion tabs while commands are being registered/unregistered), but the completer is clearly not threadsafe anyway.