[
https://issues.apache.org/jira/browse/DBCP-271?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sebb updated DBCP-271:
----------------------
Description:
DBCP-270 implies that the AbandonedTrace class is called from multiple threads,
however it is not thread-safe:
* SimpleDateFormat is not threadsafe, but it is called without protection.
* various instance fields need to be made final to ensure that they are
published correctly (memory visibility)
* getLastUsed/setLastUsed need to be synchronized - or better, createdBy made
volatile so printStackTrace can access the variable safely
(createdBy is rewritten, not updated, so lost updates are not important)
Also, the Javadoc for printStackTrace() is wrong.
was:
DBCP-270 implies that the AbandonedTrace class is called from multiple threads,
however it is not thread-safe:
* SimpleDateFormat is not threadsafe, but it is called without protection.
* various instance fields need to be made final to ensure that they are
published correctly (memory visibility)
* getLastUsed/setLastUsed need to be synchronized
Also, the Javadoc for printStackTrace() is wrong.
> Thread safety issues in AbandonedTrace class
> --------------------------------------------
>
> Key: DBCP-271
> URL: https://issues.apache.org/jira/browse/DBCP-271
> Project: Commons Dbcp
> Issue Type: Bug
> Reporter: Sebb
> Fix For: 1.3
>
>
> DBCP-270 implies that the AbandonedTrace class is called from multiple
> threads, however it is not thread-safe:
> * SimpleDateFormat is not threadsafe, but it is called without protection.
> * various instance fields need to be made final to ensure that they are
> published correctly (memory visibility)
> * getLastUsed/setLastUsed need to be synchronized - or better, createdBy made
> volatile so printStackTrace can access the variable safely
> (createdBy is rewritten, not updated, so lost updates are not important)
> Also, the Javadoc for printStackTrace() is wrong.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.