ok, I switched from Safari to Firefox and installed Firebug and also
Wireshark.

The stack overflow issue seems to be happening on the "home page", a
custom page that lists a lot of items.
This list grows a little each day so it may be that it has just become
too large.
On the other hand, it seems to display when the page is first loaded
without a problem.

In Firebug, I see a series of POST ajax_request requests resulting in
500 Internal Server Error responses.
Under the Response tab, I see the cause of the errors is essentially
the same stack overflow error I posted earlier.
Under the Post tab, I see

__lift__GCNodes (Very Large Data)

and over to the right in blue there is a link labeled jquery.js (line
1080) that points into the jquery code.

It could be that it is about time to revise my little app to page thru
large data sets rather than just listing them all on one page but it's
odd that it seemed to work fine until a day or so ago.

In Wireshark I also did not see any JSON calls.  I may not have been
filtering correctly, tho, as it didn't show me anything when I
filtered on the port I'm using, and so on.

On Feb 15, 7:15 pm, David Pollak <[email protected]>
wrote:
> Paul,
> Something is calling JSONParser with a parameter that's causing the stack
> overflow.
>
> You can use Firebug to see what the browser is sending to the server.
>  That's a way to capture the JSON.
>
> Wireshark is a way of intercepting the HTTP traffic and you can see what the
> client is sending to the server.
>
> If you can provide me with the String that's causing the JSON parsing
> failure, I can add it to the test suite and fix the bug.
>
> Thanks,
>
> David
>
> On Sun, Feb 15, 2009 at 5:25 PM, Paul O'Rorke <[email protected]> wrote:
>
> > Hi, David:
>
> > I'm not using JSON directly myself and when I do a search on "json" it
> > only shows up on one line in the default.html page:
>
> >    <script id="json" src="/classpath/json.js" type="text/javascript"/
>
> > Perhaps it is JSON that is being used under the hood?  I am using
> > CRUDIFY and the menu items for add, delete, and list operations and
> > the associated pages.  I'm also using some ajax checkboxes and
> > textboxes like the ones in lift workshop examples (specifically: the
> > todo example).
>
> > By the way, the app still seems to work, it just tends to slow down
> > after a while.
>
> > On Feb 15, 4:01 pm, David Pollak <[email protected]>
> > wrote:
> > > Paul,
> > > Please provide a sample of the JSON that caused the stack overflow.
>
> > > Thanks,
>
> > > David
>
> > > On Sun, Feb 15, 2009 at 1:24 PM, Paul O'Rorke <[email protected]> wrote:
>
> > > > Something odd has started to happen in the last day or two:  I am
> > > > starting to get stackoverflows in a small app that I use.  I have not
> > > > changed my classes for a week or so and use the app daily.
> > > > It has been working ok up until today or last night.
> > > > This seems to happen as soon as it starts up before I even start to
> > > > use it.
> > > > I am using Scala 2.7.3 and the following lift
> > > >      <version>0.11-SNAPSHOT</version>
>
> > > > [INFO] Starting jetty 6.1.15.rc2 ...
> > > > 2009-02-15 13:03:37.799::INFO:  jetty-6.1.15.rc2
> > > > 2009-02-15 13:03:37.994::INFO:  No Transaction manager found - if your
> > > > webapp requires one, please configure one.
> > > > 2009-02-15 13:03:40.506::INFO:  Started
> > > > [email protected]:8080
> > > > [INFO] Started Jetty Server
> > > > [INFO] Starting scanner at interval of 5 seconds.
> > > > WARN - Request for /ajax_request failed null
> > > > java.lang.StackOverflowError
> > > >        at
> > net.liftweb.util.JSONParser$$anonfun$string$4$$anonfun$apply$14$
> > > > $anonfun$apply$15$$anonfun$apply$16.apply(JSON.scala:46)
> > > >        at
> > net.liftweb.util.JSONParser$$anonfun$string$4$$anonfun$apply$14$
> > > > $anonfun$apply$15$$anonfun$apply$16.apply(JSON.scala:46)
> > > >        at scala.util.parsing.combinator.Parsers$$anonfun$not$1.apply
> > > > (Parsers.scala:703)
> > > >        at scala.util.parsing.combinator.Parsers$$anonfun$not$1.apply
> > > > (Parsers.scala:702)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at net.liftweb.util.SafeSeqParser$$anon$1.apply
> > > > (CombParserHelpers.scala:169)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Success.flatMapWithNext
> > > > (Parsers.scala:128)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$append$1$
> > > > $anonfun$apply$1.apply(Parsers.scala:214)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$append$1$
> > > > $anonfun$apply$1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$Failure.append(Parsers.scala:
> > > > 168)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Success.flatMapWithNext
> > > > (Parsers.scala:128)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$flatMap
> > > > $1.apply(Parsers.scala:206)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply
> > > > (Parsers.scala:209)
> > > >        at
> > > > scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers.scala:
> > > > 188)
> > > >        at scala.util.parsing.combinator.Parsers$Parser$$anonfun$append
> > > > $1.apply(Parsers.scala:214)
> > > >        at
>
> ...
>
> read more »

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to