Hi, That's strange, because the exception is 'item not found'. Items (nodes, properties) are not stored in the data store. Items are stored in the persistence manager. Running the data store garbage collection doesn't delete anything in the persistence manager, it only deletes unreferenced binaries in the data store.
Could you try if you get the same exception if you comment out the call to gc.deleteUnused() ? Regards, Thomas On Tue, May 12, 2009 at 8:01 PM, MatthiasR <[email protected]> wrote: > > Hi, > > thanks for your reply. > > 1. I inserted the "consistencyCheck" and "consistencyFix" parameters in my > repository config xml file and restartet my application. But the problem > still persists. > > 2. I also regenerated the search index, but also no change. > > 3. I could reproduce the bug with another repository: --> update to > Jackrabbit 1.5.5 --> execute Garbage collecting --> Error > > 4. Here's the stack trace: > > ERROR [http-8082-Processor25] smc.jcr.jackrabbit.security.AccessManager - > javax.jcr.ItemNotFoundException: 2957af4b-4024-434c-ad40-8eeccf78dd9e (line > 138) > javax.jcr.ItemNotFoundException: 2957af4b-4024-434c-ad40-8eeccf78dd9e > at > org.apache.jackrabbit.core.ItemManager.getItemData(ItemManager.java:284) > at org.apache.jackrabbit.core.ItemManager.getItem(ItemManager.java:228) > at org.apache.jackrabbit.core.ItemManager.getItem(ItemManager.java:493) > at > org.apache.jackrabbit.core.SessionImpl.getNodeById(SessionImpl.java:519) > at > smc.jcr.jackrabbit.security.SecurityManager.getPermissionList(SecurityManager.java:263) > at > smc.jcr.jackrabbit.security.SecurityManager.isGranted(SecurityManager.java:392) > at > smc.jcr.jackrabbit.security.AccessManager.isGranted(AccessManager.java:134) > at > org.apache.jackrabbit.core.ItemImpl.validateTransientItems(ItemImpl.java:398) > at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1058) > at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:858) > at smc.jcr.AbstractJCRData.createFolder(AbstractJCRData.java:1171) > at smc.broker.xmlapi.XMLAPI.CreateFolder(XMLAPI.java:510) > 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:585) > at > smc.broker.servlet.PropertyReader.processXMLAPIMethod(PropertyReader.java:256) > at smc.broker.servlet.PropertyReader.service(PropertyReader.java:152) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378) > at > org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109) > at > org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101) > at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91) > at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:174) > at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:277) > at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89) > at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235) > at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) > at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) > at > org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:183) > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) > at java.lang.Thread.run(Thread.java:595) > > 5. And at last the code I'm using to execute garbage collection: > > GarbageCollector gc; > SessionImpl si = (SessionImpl)session; > gc = si.createDataStoreGarbageCollector(); > > // optional (if you want to implement a progress bar / output): > gc.scan(); > gc.stopScan(); > > // delete old data > gc.deleteUnused(); > > Regards, > Matthias > > > Thomas Müller-2 wrote: >> >> Hi, >> >> Usually if there is a problem with the data store, the exception is >> different. >> >> Could you post the complete stack trace please? >> >> Maybe the search index is out of sync with the repository. You could >> delete the search index and restart (in that case the index is >> re-built). >> >> If this doesn't help: The persistence managers support running a >> consistency check and fix. See: >> http://jackrabbit.apache.org/api/1.5/org/apache/jackrabbit/core/persistence/bundle/BundleDbPersistenceManager.html >> >> >> >> >> Regards, >> Thomas >> >> > > -- > View this message in context: > http://www.nabble.com/ItemNotFoundException-after-Garbage-Collecting-FileDataStore-tp23501738p23507308.html > Sent from the Jackrabbit - Users mailing list archive at Nabble.com. > >
