tapestry-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Strand (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (TAP5-1660) Per-thread scope services not thread-safe
Date Wed, 21 Sep 2011 15:27:09 GMT

    [ https://issues.apache.org/jira/browse/TAP5-1660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13109572#comment-13109572

Martin Strand commented on TAP5-1660:

This does not look like a bug.
The test checks whether the hashCodes of service objects are unique, which they don't need
to be.
If you log the hashCode from the PageRenderQueueImpl constructor (in your example) you will
see that distinct objects may have the same hashCode.

> Per-thread scope services not thread-safe
> -----------------------------------------
>                 Key: TAP5-1660
>                 URL: https://issues.apache.org/jira/browse/TAP5-1660
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-ioc
>    Affects Versions: 5.2.5
>            Reporter: Nourredine K.
>              Labels: ioc, jdk1.5, perthread, thread-safe
>         Attachments: Perthread_scope_Threadsafe_Tapestry5.2.6.patch, tapestry5-concurrency-sample.zip
> Hi,
> Since Tapestry 5.2, it seems that per-thread scope services are not thread-safe (some
of our integration tests executed in parallel fail since Tapestry 5.2).
> The proxy managed by Tapestry does not create a new instance of the service for each
request/thread as expected.
> That leads to strange behaviour when you use the Environmental services as data's container
for example.
> I also noticed that the synchronization of some resources (used by per-thread scope services)
is effective only for jdk 1.5 (see PerthreadmanagerImpl's constructor and JDUtils.JDK_1_5).
But this aspect does not explain everything : the tests fail with JDK 1.5 too.
> The related discussion here : http://tapestry.1045711.n5.nabble.com/Tapestry-5-2-Per-thread-scope-services-not-thread-safe-td4825735.html
> Nourredine. 

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


View raw message