Code Review 6967684: httpserver using a non thread-safe SimpleDateFormat
Michael McMahon
michael.x.mcmahon at oracle.com
Fri Jul 9 02:10:24 PDT 2010
Chris Hegarty wrote:
> Michael,
>
> CR 6967684: httpserver using a non thread-safe SimpleDateFormat
>
> Bug description says it all. I guess in reality this may have gone
> unseen for so long because, if two or more threads were servicing
> requests the dates they would be generating should be fairly similar,
> but worst case they could actually see partial of corrupt dates. This
> bug causes random httpserver tests to fail when run with assertions
> enabled.
>
> The most reasonable solution is to use a thread-local instance of the
> formatter, rather than creating one per request.
>
> Webrev:
> http://cr.openjdk.java.net/~chegar/6967684/webrev.00/webrev/
>
> Thanks,
> -Chris.
Interesting bug.
I wonder would it be better to use the ServerTimerTask to read the time
of day each time
it wakes up and the thread handlers would just read this value each time
they need it?
That's probably what should have been done originally, as it scales
better with more traffic
and formatting dates is probably quite compute intensive.
- Michael.
More information about the net-dev
mailing list