[infinispan-dev] frequent stack in testsuite
Manik Surtani
manik at jboss.org
Mon Jun 13 11:30:48 EDT 2011
On 10 Jun 2011, at 15:14, Galder Zamarreño wrote:
>>
>> Hi Galder, I'm not sure to what you're referring to. I was not
>> proposing to change anything on the reader side, just - if possible as
>> I don't know this code - to try not sending anything if we fail to
>> build a proper stream (instead of sending a broken stream). That is of
>> course feasible only if you've not started transmitting already.
>
> That doesn't work for state based streams, such as state transfer or rehashing. You can't just wait to build the entire stream and then send it.
>
> The error we're seeing here is precisely in one those use cases.
>
> In pretty much the rest of marshalling cases, we build the stream and then we send it.
Precisely; there are 2 types of streams, one which generates a byte buffer (RPCs and Hot Rod, etc) for which the server side does not send incomplete/erroneous streams.
The other is for state transfer which opens a stream on a network socket and starts pushing bytes out. In this case the sender could die and generate a problem on the receiver.
Galder, your approach (catching this and printing an appropriate, cleaned-up message) is the best one. Have you got a JIRA for this? I'm guessing this would be pretty easy to impl.
Cheers
Manik
--
Manik Surtani
manik at jboss.org
twitter.com/maniksurtani
Lead, Infinispan
http://www.infinispan.org
More information about the infinispan-dev
mailing list