From: Dmitriy S. <sha...@gm...> - 2010-11-07 11:20:48
|
I did add this test to xquery tests suite (eXists one). Thanks. http://exist.svn.sourceforge.net/exist/?rev=13124&view=rev On Sun, Nov 7, 2010 at 12:18 PM, LordGeoffrey <lor...@op...>wrote: > On 07/11/10 16:51, Dmitriy Shabanov wrote: > >> >> Well, it should not be a problem, can you share the trace log? (and >> script) >> > It will take a bit of time to extract the code so it is clear to others. > But in all its raw form it can be found here: http://pastebin.com/T0AZGJEH > > On the other hand here is equivalent but far simpler code that I used to > comfirm my suspicions>>> > > declare function local:plus($x) { > if ($x > 0) > then $x + local:plus($x - 1) > else 0 > }; > local:plus(250) > > <<< > local:plus(200) doesn't cause a failure. > > > The stack trace (obviously)>>>> > org.xmldb.api.base.XMLDBException: Failed to invoke method queryP in class > org.exist.xmlrpc.RpcConnection: java.lang.StackOverflowError > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:113) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:71) > at > org.exist.xmldb.RemoteXPathQueryService.execute(RemoteXPathQueryService.java:411) > at org.exist.client.QueryDialog$QueryThread.run(QueryDialog.java:473) > Caused by: org.apache.xmlrpc.XmlRpcException: Failed to invoke method > queryP in class org.exist.xmlrpc.RpcConnection: java.lang.StackOverflowError > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:197) > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:156) > at > org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:115) > at > org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:69) > at > org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:56) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:167) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:158) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:147) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:99) > ... 3 more > Caused by: org.apache.xmlrpc.XmlRpcException: Failed to invoke method > queryP in class org.exist.xmlrpc.RpcConnection: java.lang.StackOverflowError > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:197) > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:156) > at > org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:115) > at > org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:69) > at > org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:56) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:167) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:158) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:147) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:99) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:71) > at > org.exist.xmldb.RemoteXPathQueryService.execute(RemoteXPathQueryService.java:411) > at org.exist.client.QueryDialog$QueryThread.run(QueryDialog.java:473) > > > org.xmldb.api.base.XMLDBException: Failed to invoke method queryP in class > org.exist.xmlrpc.RpcConnection: java.lang.StackOverflowError > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:113) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:71) > at > org.exist.xmldb.RemoteXPathQueryService.execute(RemoteXPathQueryService.java:411) > at org.exist.client.QueryDialog$QueryThread.run(QueryDialog.java:473) > Caused by: org.apache.xmlrpc.XmlRpcException: Failed to invoke method > queryP in class org.exist.xmlrpc.RpcConnection: java.lang.StackOverflowError > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:197) > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:156) > at > org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:115) > at > org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:69) > at > org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:56) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:167) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:158) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:147) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:99) > ... 3 more > Caused by: org.apache.xmlrpc.XmlRpcException: Failed to invoke method > queryP in class org.exist.xmlrpc.RpcConnection: java.lang.StackOverflowError > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:197) > at > org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:156) > at > org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:115) > at > org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:69) > at > org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:56) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:167) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:158) > at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:147) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:99) > at > org.exist.xmldb.RemoteXPathQueryService.query(RemoteXPathQueryService.java:71) > at > org.exist.xmldb.RemoteXPathQueryService.execute(RemoteXPathQueryService.java:411) > at org.exist.client.QueryDialog$QueryThread.run(QueryDialog.java:473) > > -- Dmitriy Shabanov |