RE: StackOverflowError under load

2007-10-06 Thread Jerome Louvel

Hi Joan,

A very similar issue has been reported by Amol:
http://restlet.tigris.org/issues/show_bug.cgi?id=367

Let's continue the discussion there.

Best regards,
Jerome  

 -Message d'origine-
 De : Joan Picanyol i Puig [mailto:[EMAIL PROTECTED] 
 Envoyé : lundi 1 octobre 2007 20:17
 À : discuss@restlet.tigris.org
 Objet : Re: StackOverflowError under load
 
 * Thierry Boileau [EMAIL PROTECTED] [20071001 17:03]:
  actually, I think that there is an underlying exception 
 that provokes the
  infinite recursion and the stackoverflow exception.
 
 Could be, but I don't know how to find it. I've changed my logging
 configuration, and this is the trace I get (the other part is as
 before). Notice how the first request is OK, and the next 
 ones fail. The
 magic number for my configuration is 1769 invocations, and 
 after that
 it just wedges.
 
 01-oct-2007 20:43:01 com.noelios.restlet.component.HostRoute 
 beforeHandle
 FINA: New base URI: http://192.168.228.11:7210
 01-oct-2007 20:43:01 com.noelios.restlet.component.HostRoute 
 beforeHandle
 FINA: New remaining part: /bsf/api//pdf/enc-uri/68892
 01-oct-2007 20:43:01 org.restlet.Route beforeHandle
 FINA: New base URI: http://192.168.228.11:7210/bsf/api
 01-oct-2007 20:43:01 org.restlet.Route beforeHandle
 FINA: New remaining part: //pdf/enc-uri/68892
 01-oct-2007 20:43:01 org.restlet.Route beforeHandle
 FINA: Delegating the call to the target Restlet
 01-oct-2007 20:43:01 com.noelios.restlet.LogFilter afterHandle
 INFO: 2007-10-0120:43:01192.168.228.111 - 
   192.168.228.11  7210GET /bsf/api//pdf/enc-uri/68892 
 -   200 0   - 5   
 http://192.168.228.11:7210  RPT-HTTPClient/0.3-3E   -
 01-oct-2007 20:43:01 com.noelios.restlet.component.HostRoute 
 beforeHandle
 FINA: New base URI: http://192.168.228.11:7210
 01-oct-2007 20:43:01 com.noelios.restlet.component.HostRoute 
 beforeHandle
 FINA: New remaining part: /bsf/api//pdf/enc-uri/959
 01-oct-2007 20:43:01 org.restlet.Route beforeHandle
 FINA: New base URI: http://192.168.228.11:7210/bsf/api
 01-oct-2007 20:43:01 org.restlet.Route beforeHandle
 FINA: New remaining part: //pdf/enc-uri/959
 01-oct-2007 20:43:01 org.restlet.Route beforeHandle
 FINA: Delegating the call to the target Restlet
 01-oct-2007 20:43:01 com.noelios.restlet.LogFilter afterHandle
 INFO: 2007-10-0120:43:01192.168.228.111 - 
   192.168.228.11  7210GET /bsf/api//pdf/enc-uri/959   
 -   500 366 - 771 
 http://192.168.228.11:7210  RPT-HTTPClient/0.3-3E   -
 01-oct-2007 20:43:03 com.noelios.restlet.component.HostRoute 
 beforeHandle
 FINA: New base URI: http://192.168.228.11:7210
 01-oct-2007 20:43:03 com.noelios.restlet.component.HostRoute 
 beforeHandle
 FINA: New remaining part: /bsf/api//pdf/enc-uri/395100
 01-oct-2007 20:43:03 org.restlet.Route beforeHandle
 FINA: New base URI: http://192.168.228.11:7210/bsf/api
 01-oct-2007 20:43:03 org.restlet.Route beforeHandle
 FINA: New remaining part: //pdf/enc-uri/395100
 01-oct-2007 20:43:03 org.restlet.Route beforeHandle
 FINA: Delegating the call to the target Restlet
 01-oct-2007 20:43:03 com.noelios.restlet.LogFilter afterHandle
 INFO: 2007-10-0120:43:03192.168.228.111 - 
 192.168.228.11  7210GET /bsf/api//pdf/enc-uri/395100  
   - 500 366 - 115 http://192.168.228.11:7210  
 RPT-HTTPClient/0.3-3E - 
 
 any ideas?
 --
 pica


StackOverflowError under load

2007-09-26 Thread Joan Picanyol i Puig
Hi there,

We've implemented a callback mecanism under version 1.0.2. We have 5
different restlets, and after attaching them all we attach a default
restlet with this simple handle method:

public void handle(Request request, Response response) {

log.error(Default handle, unidentified notificacion.); 
response.setStatus(Status.SUCCESS_OK);

}

Simple integration tests are fine, and everything looks OK upon startup, but
after a while something gets wedged (the mecanism stops working) and we end up
with:

26-sep-2007 18:30:37 com.noelios.restlet.StatusFilter getStatus
GRAVE: Unhandled exception or error intercepted
java.lang.StackOverflowError
at java.util.Hashtable.get(Hashtable.java:336)
at java.util.Properties.getProperty(Properties.java:774)
at java.lang.System.getProperty(System.java:630)
at sun.security.action.GetPropertyAction.run(GetPropertyAction.java:66)
at java.security.AccessController.doPrivileged(Native Method)
at java.io.PrintWriter.init(PrintWriter.java:77)
at java.io.PrintWriter.init(PrintWriter.java:61)
at java.util.logging.SimpleFormatter.format(SimpleFormatter.java:71)
at java.util.logging.StreamHandler.publish(StreamHandler.java:179)
at java.util.logging.ConsoleHandler.publish(ConsoleHandler.java:88)
at java.util.logging.Logger.log(Logger.java:452)
at java.util.logging.Logger.doLog(Logger.java:474)
at java.util.logging.Logger.log(Logger.java:563)
at com.noelios.restlet.StatusFilter.getStatus(StatusFilter.java:183)
at 
com.noelios.restlet.application.ApplicationStatusFilter.getStatus(ApplicationStatusFilter.java:76)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:89)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:87)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:87)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Filter.doHandle(Filter.java:105)

repeated about 200 times. Any ideas or suggestions on how to debug this?

tks
-- 
pica