The symptom is typically an ArrayIndexOutOfBoundsException exception when one wants to get the selected rows at a later time.
The conditions for it to happen are:
1. Table filter is set;
2. Table is sorting;
3. Some rows are selected, but the view indexes(or selection indexes) are changing when table rows are updated, added and removed.
The bug does not normally kill immediately, but after a few rounds of it, the error accumulates until you try to get selected rows, it goes out of bound.
It took me 6 hours to find the bug. Not from stacktracing but from reading the code directly right before going crazy. There are similar reports on the internet, but they failed to identify the root cause(http://www.java.net/node/702161?force=979). I guess it's because the accumulating nature of the bug, the seemingly randomness and the inconsistent ListSelectionModel method signature.
Well, now to read the link again, you actually have commented on the problem!
I guess it meant to come back and haunt you again