commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sebb (JIRA)" <j...@apache.org>
Subject [jira] Commented: (MATH-505) TestUtils is thread-hostile
Date Tue, 01 Feb 2011 12:54:28 GMT

    [ https://issues.apache.org/jira/browse/MATH-505?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12989188#comment-12989188
] 

Sebb commented on MATH-505:
---------------------------

There is another possible option, which would be to fix the default implementations, and create
new static methods that took an extra parameter for the implementation to be used.

At present, changes to the static fields are not guaranteed to be published correctly. Making
them volatile would fix this, but would not help with concurrent access.

> TestUtils is thread-hostile
> ---------------------------
>
>                 Key: MATH-505
>                 URL: https://issues.apache.org/jira/browse/MATH-505
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 1.2, 2.1
>            Reporter: Sebb
>
> TestUtils has several mutable static fields which are not synchronised, or volatile.
> If one of the fields is updated by thread A, there is no guarantee that thread B will
see the full update - it may see a partially updated object.
> Furthermore, at least some of the static fields reference a mutable object, which can
be changed whilst another thread is using it.
> As far as I can tell, this class must only ever be used by a single thread otherwise
the results will be unpredictable.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message