From: Lydia <ll...@so...> - 2004-04-28 20:20:34
|
Hello, I have tested the latest development snapshot 20040423. But I still keep getting NullPointerException when updating some of the files. What I did was: 1. Started the database. 2. Created a new file, append a child Node which also had one or more child Notes. 3. Inserted the file to the database. 4. Shutdown the database. 5. Restarted the database. 6. Updated the file. But I could not update it successfully any more. (NOTE that I can update the file successfully if I do not restart the database after inserting.) The problem seemed like the DOMFile could not find the corresponding Node with the given GID. The error message is as follow: java.lang.NullPointerException at org.exist.dom.NodeImpl.getPath(NodeImpl.java:364) at org.exist.dom.ElementImpl.updateChild(ElementImpl.java:1243) at org.exist.xupdate.Update.process(Update.java:92) at org.exist.xmlrpc.RpcConnection.xupdateResource(RpcConnection.java:521) at org.exist.xmlrpc.RpcServer.xupdateResource(RpcServer.java:1171) at org.exist.xmlrpc.RpcServer.xupdateResource(RpcServer.java:1159) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.exist.xmlrpc.AuthenticatedHandler.execute (AuthenticatedHandler.java:116) at org.exist.xmlrpc.AuthenticatedHandler.execute (AuthenticatedHandler.java:63) at org.apache.xmlrpc.XmlRpcWorker.invokeHandler(XmlRpcWorker.java:128) at org.apache.xmlrpc.XmlRpcWorker.execute(XmlRpcWorker.java:185) at org.apache.xmlrpc.XmlRpcServer.execute(XmlRpcServer.java:151) at org.apache.xmlrpc.XmlRpcServer.execute(XmlRpcServer.java:139) at org.apache.xmlrpc.WebServer$Connection.run(WebServer.java:773) at org.apache.xmlrpc.WebServer$Runner.run(WebServer.java:657) at java.lang.Thread.run(Thread.java:534) And before this error message, I also got a WARN from the logger - “(DOMFile.java [findValue]:731) - 4 not found.” It will be very appreciated if this could be solved or I could get any advice to avoid this error. Best Regard, Lydia |
From: Wolfgang M. <wol...@ex...> - 2004-04-29 15:11:29
|
Hi, > I have tested the latest development snapshot 20040423. But I still keep > getting NullPointerException when updating some of the files. What I did > was: > > 1. Started the database. > 2. Created a new file, append a child Node which also had one or more child > Notes. > 3. Inserted the file to the database. > 4. Shutdown the database. > 5. Restarted the database. > 6. Updated the file. > > But I could not update it successfully any more. (NOTE that I can update > the file successfully if I do not restart the database after inserting.) > The problem seemed like the DOMFile could not find the corresponding Node > with the given GID. Ok, it seems there's still some caching problem here. I will try to figure this out... However, it may help if you could provide a small example class that shows what you were actually doing? Wolfgang |
From: Lydia <ll...@so...> - 2004-04-30 16:31:41
|
> > Hi, > > > I have tested the latest development snapshot 20040423. But I still keep > > getting NullPointerException when updating some of the files. What I did > > was: > > > > 1. Started the database. > > 2. Created a new file, append a child Node which also had one or more child > > Notes. > > 3. Inserted the file to the database. > > 4. Shutdown the database. > > 5. Restarted the database. > > 6. Updated the file. > > > > But I could not update it successfully any more. (NOTE that I can update > > the file successfully if I do not restart the database after inserting.) > > The problem seemed like the DOMFile could not find the corresponding Node > > with the given GID. > > Ok, it seems there's still some caching problem here. I will try to figure > this out... However, it may help if you could provide a small example class > that shows what you were actually doing? > > Wolfgang > > > ------------------------------------------------------- > This SF.Net email is sponsored by: Oracle 10g > Get certified on the hottest thing ever to hit the market... Oracle 10g. > Take an Oracle 10g class now, and we'll give you the exam FREE. > http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click > Hi, Wolfgang, I created a testing database which contains some huge xml files. I also created 2 testing java classes, one is called InsertTesting.java, and the other one is called UpdateTesting.java. Please tell me how I can send the files to you. To generate the error, just follow the following steps: 1. Start eXist db engine using my data. 2. Run InsertTesting which inserts an xml document. 3. Shutdown the eXist db engine. 4. Start the eXist again. 5. Run UpdateTesting which updates the xml document inserted by InsertTesting. You'll see the same error as what I got in my application. Regards, Lydia |
From: Wolfgang M. <wol...@ex...> - 2004-05-10 12:46:01
|
Hi, it took me quite some time, but I have finally been successful: some keys in the btree (which maps node ids to storage addresses) were not correctly removed during the xupdate. We thus had bad entries in the btree, leading to NullPointerExceptions. This bug has been really difficult to find, though it is easy to fix. It nearly drove me mad during the weekend. Anyway, the current CVS or today's snapshot should fix the issue. Wolfgang On Friday 30 April 2004 18:31, Lydia wrote: > > Hi, > > > > > I have tested the latest development snapshot 20040423. But I still > > > keep getting NullPointerException when updating some of the files. What > > > I did was: > > > > > > 1. Started the database. > > > 2. Created a new file, append a child Node which also had one or more > > > child Notes. > > > 3. Inserted the file to the database. > > > 4. Shutdown the database. > > > 5. Restarted the database. > > > 6. Updated the file. > > > > > > But I could not update it successfully any more. (NOTE that I can > > > update the file successfully if I do not restart the database after > > > inserting.) The problem seemed like the DOMFile could not find the > > > corresponding Node with the given GID. > > > > Ok, it seems there's still some caching problem here. I will try to > > figure this out... However, it may help if you could provide a small > > example class that shows what you were actually doing? > > > > Wolfgang > > > > > > ------------------------------------------------------- > > This SF.Net email is sponsored by: Oracle 10g > > Get certified on the hottest thing ever to hit the market... Oracle 10g. > > Take an Oracle 10g class now, and we'll give you the exam FREE. > > http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click > > Hi, Wolfgang, > > I created a testing database which contains some huge xml files. I also > created 2 testing java classes, one is called InsertTesting.java, and the > other one is called UpdateTesting.java. Please tell me how I can send the > files to you. > > To generate the error, just follow the following steps: > > 1. Start eXist db engine using my data. > 2. Run InsertTesting which inserts an xml document. > 3. Shutdown the eXist db engine. > 4. Start the eXist again. > 5. Run UpdateTesting which updates the xml document inserted by > InsertTesting. > > You'll see the same error as what I got in my application. > > Regards, > > Lydia |