Hi,

We had the same issue when upgrading to restlet 2.0.0.
Some links about the (I think) same issue:

http://restlet.tigris.org/issues/show_bug.cgi?id=1053  
andhttp://comments.gmane.org/gmane.comp.java.restlet/12273

It all boils down to calling the exhaust() method on the response 
representation (in a finally-block), which solves the problem. For some 
reason calling the release() method is not enough, and this 'exhaust' 
solves the problem. We asked a similar question on the list some days ago.

We still have other issues (closed streams in a StreamRepresentation), 
which did not happen in restlet version r6565 but do happen in 2.0.0. 
Maybe an overview of what has changed and what to be carefull about 
would be a good idea?

Freya

> Hi,
>
> We are using ClientResource in a Restlet to make calls to another
> server-side Restlet (we're implementing proxy-functionality), and we are
> having lots of issues with hanging calls. We have traced it down to the
> "latch/unblock" code in BaseClientHelper, which is not 100% working.
> Sometimes it just doesn't work, and we see the client code hanging on
> BaseClientHelper.handle(Request,Response) "latch.await()".
>
> If the Restlet we are calling results in a "Socket error"/"Broken pipe"
> call, then we can easily see that there simply is no unblock happening
> in the BaseClientHelper code (because the catch code doesn't do
> unblock), and so the request hangs. The only way to unhang is to restart
> the server.
>
> It's really hard to try to follow what is going on and understand what
> is missing with the latch/unblock, so if anyone has pointers, or have
> had this issue, please let us know. It's keeping us from going into
> production right now :-(
>
> thanks, Rickard
>
> ------------------------------------------------------
> http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2649186
>
>

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2649207

Reply via email to