-
Bug
-
Resolution: Not an Issue
-
P4
-
None
-
6
-
x86
-
solaris_2.5.1
FULL PRODUCT VERSION :
java version "1.6.0_10-beta"
Java(TM) SE Runtime Environment (build 1.6.0_10-beta-b25)
Java HotSpot(TM) Client VM (build 11.0-b12, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Linux riemann 2.6.18.8-0.1-default #1 SMP Fri Mar 2 13:51:59 UTC 2007 i686 athlon i386 GNU/Linux
A DESCRIPTION OF THE PROBLEM :
List<Integer> list = new ArrayList<Integer>();
list.add(0);
list.add(1);
list.add(2);
list.add(3);
List<Integer> subList = list.subList(0,2);
list.add(4);
System.out.println(": "+subList.size());
yields
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.SubList.checkForComodification(AbstractList.java:752)
at java.util.SubList.size(AbstractList.java:625)
at eu.simuline.arithmetics.left2right.SumMultArgs1.main(SumMultArgs1.java
although i think it must not.
adding elements to the backed list does not modify the sublist
and in particular not its size.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
just hack in the code in the description.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
no exception
ACTUAL -
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.SubList.checkForComodification(AbstractList.java:752)
at java.util.SubList.size(AbstractList.java:625)
at eu.simuline.arithmetics.left2right.SumMultArgs1.main(SumMultArgs1.java
ERROR MESSAGES/STACK TRACES THAT OCCUR :
see above
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
class Test {
public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>();
list.add(0);
list.add(1);
list.add(2);
list.add(3);
List<Integer> subList = list.subList(0,2);
list.add(4);
System.out.println(": "+subList.size());
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
i did not find any workaround.
java version "1.6.0_10-beta"
Java(TM) SE Runtime Environment (build 1.6.0_10-beta-b25)
Java HotSpot(TM) Client VM (build 11.0-b12, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Linux riemann 2.6.18.8-0.1-default #1 SMP Fri Mar 2 13:51:59 UTC 2007 i686 athlon i386 GNU/Linux
A DESCRIPTION OF THE PROBLEM :
List<Integer> list = new ArrayList<Integer>();
list.add(0);
list.add(1);
list.add(2);
list.add(3);
List<Integer> subList = list.subList(0,2);
list.add(4);
System.out.println(": "+subList.size());
yields
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.SubList.checkForComodification(AbstractList.java:752)
at java.util.SubList.size(AbstractList.java:625)
at eu.simuline.arithmetics.left2right.SumMultArgs1.main(SumMultArgs1.java
although i think it must not.
adding elements to the backed list does not modify the sublist
and in particular not its size.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
just hack in the code in the description.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
no exception
ACTUAL -
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.SubList.checkForComodification(AbstractList.java:752)
at java.util.SubList.size(AbstractList.java:625)
at eu.simuline.arithmetics.left2right.SumMultArgs1.main(SumMultArgs1.java
ERROR MESSAGES/STACK TRACES THAT OCCUR :
see above
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
class Test {
public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>();
list.add(0);
list.add(1);
list.add(2);
list.add(3);
List<Integer> subList = list.subList(0,2);
list.add(4);
System.out.println(": "+subList.size());
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
i did not find any workaround.