tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Greg Woolsey (JIRA)" <tapestry-...@jakarta.apache.org>
Subject [jira] Created: (TAPESTRY-1234) ResourceMatcherImpl not thread safe on multi-CPU system
Date Sat, 20 Jan 2007 18:40:30 GMT
ResourceMatcherImpl not thread safe on multi-CPU system

                 Key: TAPESTRY-1234
                 URL: https://issues.apache.org/jira/browse/TAPESTRY-1234
             Project: Tapestry
          Issue Type: Bug
          Components: Core, Framework
    Affects Versions: 4.1.1
            Reporter: Greg Woolsey
            Priority: Blocker

Load testing on a multi-CPU system uncovered another thread safety issue.  I'm not sure why,
because I'm unclear on the call flow, but the RegexpMatcher instance held by ResourceMatcherImpl
can be called by two threads at once.  This leads to predictable ArrayIndexOutOfBounds errors
down in the ORO Perl5Matcher class, because that class has instance state that is being accessed
by both threads, similar to the SimpleDateFormat issue in TAPESTRY-1229.

I turned it into a ThreadLocal, which worked, but I think that loses some of the pattern caching
performance benefits. Not sure what the best solution is, but a ThreadLocal is guaranteed
to be safe.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org

View raw message