[
https://issues.apache.org/jira/browse/HTTPCLIENT-741?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12584243#action_12584243
]
Tim Julien commented on HTTPCLIENT-741:
---------------------------------------
(working with Sam)
Yes, we no longer see the first two, I think. Still seeing the third, as well
as one I've inserted below. I've done some digging and I have a patch I'll
attach. Basically, in the recent concurrency fixes a change was made to
AbstractClientConnAdapter - its state is now marked as volatile. I think the
volatile marking needs to also be done in its subclasses, and classes used in
the subclasses:
1) AbstractPooledConnAdapter
2) AbstractPoolEntry
java.lang.IllegalStateException: Connection already open.
at
org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:131)
at
org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
at
org.apache.http.impl.client.DefaultClientRequestDirector.execute(DefaultClientRequestDirector.java:314)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:500)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:455)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:421)
at
com.limegroup.gnutella.http.DefaultHttpExecutor.performRequest(DefaultHttpExecutor.java:97)
at
com.limegroup.gnutella.http.DefaultHttpExecutor.access$000(DefaultHttpExecutor.java:26)
at
com.limegroup.gnutella.http.DefaultHttpExecutor$MultiRequestor.run(DefaultHttpExecutor.java:135)
at
org.limewire.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1006)
at
org.limewire.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:549)
at java.lang.Thread.run(Unknown Source)
> AbstractClientConnAdapter prone to concurrency issues
> -----------------------------------------------------
>
> Key: HTTPCLIENT-741
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-741
> Project: HttpComponents HttpClient
> Issue Type: Bug
> Components: HttpConn
> Affects Versions: 4.0 Alpha 2
> Reporter: Oleg Kalnichevski
> Priority: Critical
> Fix For: 4.0 Alpha 3
>
>
> AbstractClientConnAdapter is currently prone to all sorts of concurrency
> issues. (1) Access to internal state is not properry synchronized making the
> class prone to race conditions. Presently none of the instance variables is
> even declared volatile. (2) AbstractClientConnAdapter treats aborted
> connection as one in an illegal state, which is not quite right.
> Oleg
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]