Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
CSVFormat describes itself as immutable, but it is not @Immutable - the class fields are all mutable.
The methods that change the fields do so by creating a clone, and returning the changed clone.
So in a sense the class is immutable.
However, the normal expectation is that @Immutable classes are @ThreadSafe.
CSVFormat is not thread-safe, because the fields are not volatile, and the fields are not written & read using a common lock.
The comment needs to be clarified or removed.