commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sebb (JIRA)" <>
Subject [jira] Reopened: (LANG-367) FastDateFormat thread safety
Date Sat, 03 Nov 2007 16:06:50 GMT


Sebb reopened LANG-367:

The getInstance() methods are synchronised, but the format() methods are not.

As far as I can tell, the instances that are obtained from getInstance() may be shared between
threads, and the format() methods are those of the SimpleDateFormat class.

It may be true that the SimpleDateFormat format() methods are thread-safe under the conditions
of this class.

However this assumption is neither documented nor justified.

> FastDateFormat thread safety
> ----------------------------
>                 Key: LANG-367
>                 URL:
>             Project: Commons Lang
>          Issue Type: Bug
>            Reporter: Sebb
>             Fix For: 2.4
>         Attachments: FastDateFormat.patch
> FastDateFormat has several static HashMaps. These are currently not final, so there is
no guarantee that they will be visible to all threads.
> Patch to follow.
> Also, as far as I can make out, the class shares SimpleDateFormat instances between threads.
> It does not document why this is OK.
> I'm guessing that it assumes that instances of the SimpleDateFormat class are thread-safe
provided that they have the same attributes, but this is not documented. If this is the case,
it's not clear that it is a valid assumption.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message