Re: org.ozoneDB.ObjectNotFoundException: No such object ID:
Per Nyfelt <[email protected]> Tue, 22 Nov 2005 11:30:15 +0000
| Newsgroups | gmane.comp.java.ozone.user |
|---|---|
| Organization | New Field Consulting |
| Message-ID | <[email protected]> |
Hi Rikard, The reason is probably some harddisk problem. Are you using a journaling filesystem (e.g. reiserfs, ext3, ntfs) or a non-journaling (e.g. FAT32 or ext2)? For some options on recovering from a crash do a search on "recover" on the dev list. Another option would be to create a utility that surgically removes the entry for the missing object. This probably means creating a utility around org.ozoneDB.core.storage.wizardStore.IDTable. Best regards, Per On Thursday 17 November 2005 16.12, Rikard Andersson wrote: > Hi. > > Somehow I seem to have gotten a corrupt ozone database, how I am not > sure. But I am looking for a way to fix it without having to delete the > entire db. Leads on how the db may have been corrupt is appreciated as > well. > > Scenario: > I am able to get the name of the object from: > String[] vNames = vLocalDatabase.objectNames(); // vLocalDatabase is > org.ozoneDB.LocalDatabase > > But when I try to access the object with: > vLocalDatabase.objectForName(vNames[CORRUPT_NBR]); > I get the exception below, obviously same problem when I try to delete > it, because I need access the object in order to delete it... > > And since I am not able to delete it, I cannot (or can I?) rewrite just > the corrupt object. > > Any help, solving the issue is much appreciated. > > Br > Rikard Andersson > > Exception: > org.ozoneDB.ObjectNotFoundException: No such object ID: 119 > at org.ozoneDB.core.Transaction.acquireObject(Unknown Source) > at org.ozoneDB.Database.fetch(Unknown Source) > at org.ozoneDB.blob.BLOBPageImpl_Proxy.size(BLOBPageImpl_Proxy.java:69) > at > org.ozoneDB.blob.BLOBContainerImpl.available(BLOBContainerImpl.java:80) > at org.ozoneDB.blob.BLOBContainerImpl.read(BLOBContainerImpl.java:174) > at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor > Impl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at org.ozoneDB.core.AbstractObjectContainer.invokeTarget(Unknown > Source) > at org.ozoneDB.core.Transaction.invokeObject(Unknown Source) > at org.ozoneDB.core.DbRemote.DbInvoke.perform(Unknown Source) > at org.ozoneDB.core.Transaction.performCommand(Unknown Source) > at org.ozoneDB.core.TransactionManager.performCommand(Unknown Source) > at org.ozoneDB.core.TransactionManager.completeTransaction(Unknown > Source) > at org.ozoneDB.core.TransactionManager.handleCommand(Unknown Source) > at org.ozoneDB.core.DbRemote.DbLocalClient.send(Unknown Source) > at org.ozoneDB.ExternalDatabase.sendCommand(Unknown Source) > at org.ozoneDB.ExternalDatabase.sendCommand(Unknown Source) > at org.ozoneDB.ExternalDatabase.invoke(Unknown Source) > at > org.ozoneDB.blob.BLOBContainerImpl_Proxy.read(BLOBContainerImpl_Proxy.ja > va:220) > at org.ozoneDB.blob.BLOBInputStream.read(BLOBInputStream.java:62) > at java.util.zip.CheckedInputStream.read(CheckedInputStream.java:60) > .... ------------------------------------------------------- This SF.Net email is sponsored by the JBoss Inc. Get Certified Today Register for a JBoss Training Course. Free Certification Exam for All Training Attendees Through End of 2005. For more info visit: http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click