[
https://issues.apache.org/jira/browse/HTTPCORE-58?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12486077
]
Oleg Kalnichevski commented on HTTPCORE-58:
-------------------------------------------
Anders,
Connection objects are not thread-safe as they are not intended for use by
multiple threads. HttpConnection#shutdown() is the only method which may be
called from a different thread. #shutdown() as opposed to #close() is likely to
leave the connection in an inconsistent state and is meant to be used as the
last resort. The only solution to this situation is to synchronize on
connection instance, which I would not like to do per default for performance
reasons.
Can you live with NHTTP connections throwing checked ConnectionClosedException
instead of unchecked IllegalStateException?
Oleg
> IllegalStateException after cancelling
> --------------------------------------
>
> Key: HTTPCORE-58
> URL: https://issues.apache.org/jira/browse/HTTPCORE-58
> Project: HttpComponents Core
> Issue Type: Bug
> Components: HttpCore NIO
> Affects Versions: 4.0-alpha4
> Environment: Window Vista
> Reporter: Anders Wallgren
> Fix For: 4.0-alpha5
>
>
> Seeing this exception during tests when cancelling:
> 2007-03-14T18:04:39.600 | DEBUG | main |
> | AgentManager | startCommand:
> request[agent[localhost:62851],cancel-8]
> cancel
> 2007-03-14T18:04:39.603 | DEBUG | Agent-1 | cancel-8
> | AgentManager | initalizeContext:
> request[agent[localhost:62851],cancel-8]
> 2007-03-14T18:04:39.605 | DEBUG | Agent-1 | cancel-8
> | AgentManager | submitRequest:
> request[agent[localhost:62851],cancel-8, connected]
> 2007-03-14T18:04:39.605 | DEBUG | main |
> | AgentRequest | Cancelling
> request[agent[localhost:62851],cancel-8, connected] due to
> com.electriccloud.commander.agent.AgentPingException: testCancel
> 2007-03-14T18:04:39.608 | DEBUG | Agent-1 |
> | CommanderThread | Exiting
> Thread[Agent-1,5,main]
> 2007-03-14T18:04:39.611 | ERROR | Agent-1 |
> | CommanderThread | Uncaught exception in
> Thread[Agent-1,5,main]: java.lang.IllegalStateException: Session request
> already completed
> java.lang.IllegalStateException: Session request already completed
> at
> org.apache.http.impl.nio.reactor.SessionRequestImpl.completed(SessionRequestImpl.java:116)
> at
> org.apache.http.impl.nio.reactor.AbstractIOReactor.processNewChannels(AbstractIOReactor.java:216)
> at
> org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:124)
> at
> org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:153)
> at java.lang.Thread.run(Thread.java:619)
> at
> com.electriccloud.util.queue.CommanderThread.run(CommanderThread.java:78)
--
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]