If the exception was occurring while serializing the data, that seems like a very fishy since it means it was being added to while it was being serialized, possibly losing data.

While a ConcurrentModificationException can be thrown due to Reentrant usage, making it a synchronized List wouldn't actually stop that as it still keeps track of the mod count.

I would be a bit more interested to know what was causing this as well.