Hi Jason,

Just a few control questions, as Derby doesn't use PushbackInputStream much internally:
1) Which Derby version are you using?
2a) Does the failing result set contain any CLOB columns?
2b) Are you accessing an upgraded database?
1 - I just upgraded to 10.5.3 from 10.5.2 and verify it's still an issue. From derby.log "Apache Derby Network Server - 10.5.3.0 - (802917)"
2a - Yes!
2b -  No

Interesting piece of info I came across while putting together a small Eclipse project for repro... it seems very specific to my actual schema and the inclusion of an Order By clause on the query. I'm still debugging but seeing it work successfully on 350K result set on my repro-app was encouraging.

Thanks,
JW

Kristian Waagan wrote:
Jason Ward wrote:
Thanks Bryan, I should have included the info from the derby.log. Here's a small snippet of the ~1K lines from the log:

2009-09-17 14:58:48.873 GMT Thread[DRDAConnThread_19,5,derby.daemons] (XID = 5212534), (SESSIONID = 21), (DATABASE = C:/temp/testDB), (DRDAID = NF000001.H0EE-4195946224626394775{15}), Cleanup action starting 2009-09-17 14:58:48.873 GMT Thread[DRDAConnThread_19,5,derby.daemons] (XID = 5212534), (SESSIONID = 21), (DATABASE = C:/temp/testDB), (DRDAID = NF000001.H0EE-4195946224626394775{15}), Failed Statement is: <clipped for proprietary reasons... I can modify and disclose of required, but the SQL select looks as expected>:end parameter
java.lang.StackOverflowError
   at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
at org.apache.derby.iapi.services.io.LimitInputStream.read(Unknown Source)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
...
   at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
   at java.io.FilterInputStream.read(FilterInputStream.java:116)
Cleanup action completed

Additionally.. unchaining the exception is a little more complicated with Hibernate in the way, but I've gone about doing so... seems it's the end of the chain tho. (Interrogating the exception with debugger confirms that there's no next exception, but I'm not sure if that's only because someone's swallowing it along the line.)

Thanks,
JW

----- SQLException -----
 SQLState:   XJ001
 Error Code: -1
Message: DERBY SQL error: SQLCODE: -1, SQLSTATE: XJ001, SQLERRMC: java.lang.StackOverflowErrorXJ001.U

Any thoughts on where I should focus my attention? I can't be the only one using Derby and scrolling on large result-sets can I?

Hi Jason,

Just a few control questions, as Derby doesn't use PushbackInputStream much internally:
1) Which Derby version are you using?
2a) Does the failing result set contain any CLOB columns?
2b) Are you accessing an upgraded database?


Regards,

Reply via email to