[
https://issues.jboss.org/browse/ISPN-2699?page=com.atlassian.jira.plugin....
]
Dan Berindei updated ISPN-2699:
-------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
Changed the way response header is changed so that all values are read as soon as
possible, hence reducing the chances of sockets being left with unread data in case of any
exception.
Use generics properly in Apache pool object factory implementation for Transport
objects.
RetryOnFailureOperation now invalidates a Transport object in the pool if a
TransportException is received. This is necessary so that those Transport objects that are
invalid can be destroyed and hence any sockets left open can be closed properly.
Cleaned up references to InetSocketAddress and replaced them with references to
SocketAddress.
Parsing related errors should invalidate transport instance since often these are the
consequence of previous errors. This way, next time a client sends an operation to the
server, a brand new connection will be used.
Failed ping on startup can leave socket dirty
---------------------------------------------
Key: ISPN-2699
URL:
https://issues.jboss.org/browse/ISPN-2699
Project: Infinispan
Issue Type: Bug
Components: Remote protocols
Affects Versions: 5.2.0.Beta6
Reporter: Radim Vansa
Assignee: Galder ZamarreƱo
Priority: Critical
Fix For: 5.3.0.Final
Ping on startup in TransportObjectFactory.makeObject does not check the return value of
ping operation, neither the tcpTransport.isValid().
Therefore, if a HotRodClientException is thrown when the response header is read from
socket, the socket is left in a dirty state.
In our case this resulted in reading response to previous request (the request was
written but the response was not read due to some timeout and then, when another request
was executed it read the response to the first request). This caused {{ISPN004004: Invalid
message id. Expected 2930 and received 212}}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira