You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by srinivas reddy <sr...@yahoo.com> on 2006/03/29 11:22:51 UTC

Re: corrupted root node state

Brian Moseley <bcm <at> osafoundation.org> writes:

> 
> On 1/3/06, Stefan Guggisberg <stefan.guggisberg <at> gmail.com> wrote:
> 
> > currently i can only think of two possible explanations:
> > 1. you're trying to read data which what was written with an older 
jackrabbit
> >     version. the serialization format has changed a while ago (svn r329841).
> > 2. the power cycle must have happened during the jdbc commit call
> >     (SimpleDbPersistenceManager line 419) which in turn caused a corrupted
> >     node state. although this seems rather unlikely...
> 
> hm, we've been using r354348 for several weeks, and before that
> r330363, so i don't think we're a victim of #1.
> 
> i've written a tool to rebuild my repository based on a list of nodes
> that i know should exist. in the process, i've made an interesting
> discovery: when the root node has 1179 or fewer children, there is no
> problem deserializing its node state, but when it has 1180 or more
> children, the error occurs.
> 
> i have made this happen on my development platform, so now the problem
> seems more like a limit on the number of child nodes for the root
> node, or a limit on the size of the derby column.
> 
> a google search told me that the default size for a derby blob is 1M.
> i modifed the derby.ddl file to make the blob 10M, rebuilt an empty
> repository and inserted 1180 nodes, only to get the deserialization
> error again.
> 
> (due to the steps i take to insure an empty repository with my custom
> node types imported into it, i'm not 100% sure that the 10M change
> made it in to the final repository. i've been trying to use ij to
> examine the table, but i'm having problems getting ij to find the
> database.)
> 
> > if you can provide me the data (derby database) i'll investigate further.
> 
> thanks. i'm checking into whether or not our privacy policy allows me
> to share the database with you.
> 
> 


Hi,

 We are having same problem. We stored nearly 9000 images under a node images.

      root/contenttype/images/ here 9000 images added (9000 nodes). each image 
having properties. all nodes are custom defined.

when i execute the follwing code

 Node na=root.getNode("contenttype/images");
 System.out.println("get Root node name=================?"+na.getName());
 NodeIterator it=na.getNodes();
 System.out.println("Total no of results are ===========>"+it.getSize());

we are getting exception like..

javax.jcr.RepositoryException: failed to retrieve state of intermediary node: fa
iled to read node state: 4be92ad2-7fba-4ed9-9607-94c2999f8364: null: failed to r
ead node state: 4be92ad2-7fba-4ed9-9607-94c2999f8364: null
        at org.apache.jackrabbit.core.HierarchyManagerImpl.resolvePath(Hierarchy
ManagerImpl.java:210)
        at org.apache.jackrabbit.core.HierarchyManagerImpl.resolvePath(Hierarchy
ManagerImpl.java:340)
        at org.apache.jackrabbit.core.CachingHierarchyManager.resolvePath(Cachin
gHierarchyManager.java:189)
        at org.apache.jackrabbit.core.NodeImpl.resolveRelativeNodePath(NodeImpl.
java:237)
        at org.apache.jackrabbit.core.NodeImpl.getNode(NodeImpl.java:2204)
        at com.cms.common.ContentStore.fetchAllContent(ContentStore.java:102)
        at com.cms.action.ContentAction.SHOWALL(ContentAction.java:115)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchActio
n.java:280)
        at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:
216)
        at org.apache.struts.action.RequestProcessor.processActionPerform(Reques
tProcessor.java:484)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:274)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:148
2)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:157)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:214)
        at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
        at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:198)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:152)
        at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:137)
        at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:118)
        at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:102)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
        at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
eContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:520)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)

        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
0)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ssConnection(Http11Protocol.java:705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:683)
        at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.jackrabbit.core.state.ItemStateException: failed to read n
ode state: 4be92ad2-7fba-4ed9-9607-94c2999f8364: null
        at org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager.load(S
impleDbPersistenceManager.java:505)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.loadItemState
(SharedItemStateManager.java:845)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.getNonVirtual
ItemState(SharedItemStateManager.java:772)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.getItemState(
SharedItemStateManager.java:206)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.getNodeState(L
ocalItemStateManager.java:93)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.getItemState(L
ocalItemStateManager.java:148)
        at org.apache.jackrabbit.core.state.XAItemStateManager.getItemState(XAIt
emStateManager.java:235)
        at org.apache.jackrabbit.core.state.SessionItemStateManager.getItemState
(SessionItemStateManager.java:130)
        at org.apache.jackrabbit.core.HierarchyManagerImpl.getItemState(Hierarch
yManagerImpl.java:119)
        at org.apache.jackrabbit.core.HierarchyManagerImpl.resolvePath(Hierarchy
ManagerImpl.java:265)
        at org.apache.jackrabbit.core.CachingHierarchyManager.resolvePath(Cachin
gHierarchyManager.java:127)




Can any body have idea how to solve this problem...

thanks in advace,
srinu