https://issues.apache.org/bugzilla/show_bug.cgi?id=50957

--- Comment #12 from Mark Thomas <ma...@apache.org> 2011-03-28 16:03:53 EDT ---
(In reply to comment #11)
> (In reply to comment #10)
> > To address the isAsync() question I suspect that this is not the cause 
> > since:
> > - the issue is with static content where async state is not changing
> Yes and no.  Even though it is static content being swapped & duplicated,
> static content is not the only resource in the request stream.  For instance
> ImageA.gif & ImageB.gif are included in a page that contains a number of
> dynamic JSP elements as well.
> 
> In post #1 I listed a scenario where a JS file was served instead of HTML.  In
> that case, the page was a dynamic JSP.

None of those requests use async processing. Unless you explicitly use Servlet
3.0 async APIs then isAsync() will always return false.

> > - it doesn't explain why BIO is affected but NIO is not
> If indeed BIO & NIO share nearly identical isAsync() logic and if the real
> problem is a concurrency hazard within that logic then the unlucky timing 
> would
> just happen to be more likely in BIO.  NIO Protocol has notably less isAsync()
> calls.  So for all I know NIO is affected also, we just haven't noticed yet. 
> Maybe it is a Bohrbug or Heisenbug :)
> 
> Maybe someone with exceptionally strong concurrency skills can review 
> isAsync()
> and its usage for safety.  Either it is a hazard or it isn't.

At the moment, I'm happy isAsync() is safe. There were issues in the past (bug
49884) but the re-factoring that fixed that bug means that it should not be
possible for one thread to be reading isAsync() whilst another is changing the
value it returns.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to