title: Pentaho 5.2 community edition periodic error due to jackrabbit Workspace access denied
body: <p>I'm using Pentaho 5.2 community edition with mysql storage for jackrabbit repository. I'm getting following error frequently and it get resolved after cleaning the osgi cache and server restart. Following is the stack trace</p>
  
  <pre><code>00:00:41,140 ERROR [GuavaCachePoolPentahoJcrSessionFactory] Error obtaining session from cache. Creating one directly instead: javax.jcr.SimpleCredentials@9d6e8a4
  java.util.concurrent.ExecutionException: javax.jcr.LoginException: Workspace access denied
      at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
      at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
      at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
      at com.google.common.util.concurrent.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:135)
      at com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2346)
      at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2318)
      at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280)
      at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195)
      at com.google.common.cache.LocalCache.get(LocalCache.java:3934)
      at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938)
      at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821)
      at org.pentaho.platform.repository2.unified.jcr.sejcr.GuavaCachePoolPentahoJcrSessionFactory.getSession(GuavaCachePoolPentahoJcrSessionFactory.java:93)
      at org.pentaho.platform.repository2.unified.jcr.sejcr.CredentialsStrategySessionFactory.getSession(CredentialsStrategySessionFactory.java:355)
      at org.springframework.extensions.jcr.jackrabbit.LocalTransactionManager.doBegin(LocalTransactionManager.java:120)
      at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:374)
      at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:263)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:101)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      at com.sun.proxy.$Proxy29.getFile(Unknown Source)
      at org.pentaho.platform.repository2.unified.ExceptionLoggingDecorator$20.call(ExceptionLoggingDecorator.java:262)
      at org.pentaho.platform.repository2.unified.ExceptionLoggingDecorator$20.call(ExceptionLoggingDecorator.java:260)
      at org.pentaho.platform.repository2.unified.ExceptionLoggingDecorator.callLogThrow(ExceptionLoggingDecorator.java:489)
      at org.pentaho.platform.repository2.unified.ExceptionLoggingDecorator.getFile(ExceptionLoggingDecorator.java:260)
      at pt.webdetails.cpf.repository.pentaho.unified.UnifiedRepositoryAccess.getRepositoryFile(UnifiedRepositoryAccess.java:129)
      at pt.webdetails.cpf.repository.pentaho.unified.UnifiedRepositoryAccess.fileExists(UnifiedRepositoryAccess.java:49)
      at pt.webdetails.cda.settings.CdaFileResourceLoader.isValidId(CdaFileResourceLoader.java:64)
      at pt.webdetails.cda.settings.SettingsManager.parseSettingsFile(SettingsManager.java:166)
      at pt.webdetails.cda.CdaCoreService.doQuery(CdaCoreService.java:73)
      at pt.webdetails.cda.CdaUtils.doQueryInternal(CdaUtils.java:136)
      at pt.webdetails.cda.CdaUtils.doQuery(CdaUtils.java:169)
      at pt.webdetails.cda.CdaUtils.doQueryGet(CdaUtils.java:114)
      at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
      at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
      at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
      at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
      at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
      at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
      at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
      at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
      at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1511)
      at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1442)
      at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1391)
      at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1381)
      at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
      at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:538)
      at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:716)
      at org.pentaho.platform.web.servlet.JAXRSPluginServlet.service(JAXRSPluginServlet.java:97)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
      at org.pentaho.platform.web.servlet.JAXRSPluginServlet.service(JAXRSPluginServlet.java:102)
      at pt.webdetails.cpf.JAXRSCLPluginServlet.service(JAXRSCLPluginServlet.java:37)
      at org.pentaho.platform.web.servlet.PluginDispatchServlet.service(PluginDispatchServlet.java:89)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.pentaho.platform.web.http.filters.PentahoWebContextFilter.doFilter(PentahoWebContextFilter.java:185)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.pentaho.platform.web.http.filters.PentahoRequestContextFilter.doFilter(PentahoRequestContextFilter.java:87)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      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.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)
      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.pentaho.platform.web.http.security.PentahoBasicProcessingFilter.doFilterHttp(PentahoBasicProcessingFilter.java:115)
      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.pentaho.platform.web.http.filters.HttpSessionPentahoSessionIntegrationFilter.doFilter(HttpSessionPentahoSessionIntegrationFilter.java:263)
      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.util.FilterChainProxy.doFilter(FilterChainProxy.java:175)
      at org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.pentaho.platform.web.http.filters.SystemStatusFilter.doFilter(SystemStatusFilter.java:55)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.pentaho.platform.web.http.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:114)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.pentaho.platform.web.http.filters.WebappRootForwardingFilter.doFilter(WebappRootForwardingFilter.java:70)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.pentaho.platform.web.http.filters.PentahoPathDecodingFilter.doFilter(PentahoPathDecodingFilter.java:34)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
      at java.lang.Thread.run(Thread.java:745)
  Caused by: javax.jcr.LoginException: Workspace access denied
      at org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1496)
      at org.pentaho.platform.repository2.unified.jcr.sejcr.NoCachePentahoJcrSessionFactory.getSession(NoCachePentahoJcrSessionFactory.java:24)
      at org.pentaho.platform.repository2.unified.jcr.sejcr.GuavaCachePoolPentahoJcrSessionFactory.access$001(GuavaCachePoolPentahoJcrSessionFactory.java:29)
      at org.pentaho.platform.repository2.unified.jcr.sejcr.GuavaCachePoolPentahoJcrSessionFactory$1.load(GuavaCachePoolPentahoJcrSessionFactory.java:77)
      at org.pentaho.platform.repository2.unified.jcr.sejcr.GuavaCachePoolPentahoJcrSessionFactory$1.load(GuavaCachePoolPentahoJcrSessionFactory.java:75)
      at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524)
      at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317)
      ... 106 more
  Caused by: javax.jcr.AccessDeniedException: Not allowed to access Workspace default
      at org.apache.jackrabbit.core.security.DefaultAccessManager.init(DefaultAccessManager.java:159)
      at org.apache.jackrabbit.core.DefaultSecurityManager.getAccessManager(DefaultSecurityManager.java:279)
      at org.apache.jackrabbit.core.SessionImpl.createAccessManager(SessionImpl.java:356)
      at org.apache.jackrabbit.core.SessionImpl.&lt;init&gt;(SessionImpl.java:273)
      at org.apache.jackrabbit.core.SessionImpl.&lt;init&gt;(SessionImpl.java:239)
      at org.apache.jackrabbit.core.XASessionImpl.&lt;init&gt;(XASessionImpl.java:99)
      at org.apache.jackrabbit.core.RepositoryImpl.createSessionInstance(RepositoryImpl.java:1580)
      at org.apache.jackrabbit.core.RepositoryImpl.createSession(RepositoryImpl.java:930)
      at org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1468)
  </code></pre>