Uploaded image for project: 'GateIn Portal'
  1. GateIn Portal
  2. GTNPORTAL-2253

Scheduling page data for cache eviction doesn't seem to be working properly anymore

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Blocker
    • Resolution: Cannot Reproduce
    • Affects Version/s: 3.2.0-M01
    • Fix Version/s: 3.2.0-Beta01
    • Component/s: None
    • Labels:
      None

      Description

      If the customization associated to a window is changed and an eviction from cache is scheduled for the containing page, accessing the page will result in a blank page as the portal cannot find the new customization since it seems like it's still accessing the cached version of the page data with the following error:

      16:26:41,858 ERROR [portal:UIPortlet] Can not find 64c23def0a0002017d1fabe368b1912c
      16:26:41,858 ERROR [portal:PortalRequestHandler] Error while handling request
      org.exoplatform.portal.config.NoSuchDataException: Can not find 64c23def0a0002017d1fabe368b1912c
      	at org.exoplatform.portal.pom.config.POMSession.findCustomizationById(POMSession.java:214)
      	at org.exoplatform.portal.pom.config.tasks.PreferencesTask$GetContentId.run(PreferencesTask.java:51)
      	at org.exoplatform.portal.pom.config.tasks.PreferencesTask$GetContentId.run(PreferencesTask.java:38)
      	at org.exoplatform.portal.pom.config.POMSession.execute(POMSession.java:405)
      	at org.exoplatform.portal.pom.config.ExecutorDispatcher.execute(ExecutorDispatcher.java:44)
      	at org.exoplatform.portal.pom.config.TaskExecutionDecorator.execute(TaskExecutionDecorator.java:38)
      	at org.exoplatform.portal.pom.config.cache.DataCache.execute(DataCache.java:74)
      	at org.exoplatform.portal.pom.config.TaskExecutionDecorator.execute(TaskExecutionDecorator.java:38)
      	at org.exoplatform.portal.pom.config.cache.PortalNamesCache.execute(PortalNamesCache.java:79)
      	at org.exoplatform.portal.pom.config.POMSessionManager.execute(POMSessionManager.java:253)
      	at org.exoplatform.portal.pom.config.POMDataStorage.getId(POMDataStorage.java:143)
      	at org.exoplatform.portal.config.DataStorageImpl.getId(DataStorageImpl.java:292)
      	at org.exoplatform.portal.webui.application.UIPortlet.setState(UIPortlet.java:928)
      	at org.exoplatform.portal.webui.util.PortalDataMapper.toUIPortlet(PortalDataMapper.java:247)
      	at org.exoplatform.portal.webui.util.PortalDataMapper.buildUIContainer(PortalDataMapper.java:403)
      	at org.exoplatform.portal.webui.util.PortalDataMapper.toUIContainer(PortalDataMapper.java:315)
      	at org.exoplatform.portal.webui.util.PortalDataMapper.toUIContainer(PortalDataMapper.java:292)
      	at org.exoplatform.portal.webui.util.PortalDataMapper.toUIPage(PortalDataMapper.java:321)
      	at org.exoplatform.portal.webui.page.UIPageBody.getUIPage(UIPageBody.java:148)
      	at org.exoplatform.portal.webui.page.UIPageBody.setPageBody(UIPageBody.java:78)
      	at org.exoplatform.portal.webui.portal.UIPortal.refreshUIPage(UIPortal.java:238)
      	at org.exoplatform.portal.webui.page.UIPageActionListener$ChangeNodeActionListener.execute(UIPageActionListener.java:165)
      	at org.exoplatform.webui.core.UIComponent.broadcast(UIComponent.java:360)
      	at org.exoplatform.portal.webui.workspace.UIPortalApplication.processAction(UIPortalApplication.java:563)
      	at org.exoplatform.portal.application.PortalRequestHandler.processRequest(PortalRequestHandler.java:177)
      	at org.exoplatform.portal.application.PortalRequestHandler.execute(PortalRequestHandler.java:150)
      	at org.exoplatform.web.WebAppController.service(WebAppController.java:349)
      	at org.exoplatform.portal.application.PortalController.onService(PortalController.java:127)
      	at org.exoplatform.container.web.AbstractHttpServlet.service(AbstractHttpServlet.java:132)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.web.login.RememberMeFilter.doFilter(RememberMeFilter.java:86)
      	at org.exoplatform.web.login.RememberMeFilter.doFilter(RememberMeFilter.java:54)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.web.filter.ExtensibleFilter$ExtensibleFilterChain.doFilter(ExtensibleFilter.java:110)
      	at org.exoplatform.sample.ext.web.SampleFilter.doFilter(SampleFilter.java:46)
      	at org.exoplatform.web.filter.ExtensibleFilter$ExtensibleFilterChain.doFilter(ExtensibleFilter.java:106)
      	at org.exoplatform.web.filter.ExtensibleFilter.doFilter(ExtensibleFilter.java:80)
      	at org.exoplatform.web.filter.GenericFilter.doFilter(GenericFilter.java:79)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.web.CacheUserProfileFilter.doFilter(CacheUserProfileFilter.java:73)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.frameworks.jcr.web.ThreadLocalSessionProviderInitializedFilter.doFilter(ThreadLocalSessionProviderInitializedFilter.java:116)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.services.security.web.SetCurrentIdentityFilter.doFilter(SetCurrentIdentityFilter.java:88)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.web.login.ClusteredSSOFilter.doFilter(ClusteredSSOFilter.java:72)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.exoplatform.container.web.PortalContainerFilter.doFilter(PortalContainerFilter.java:69)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      	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:235)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
      	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
      	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
      	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
      	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
      	at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:402)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
      	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
      	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
      	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
      	at java.lang.Thread.run(Thread.java:680)
      

      Note that restarting the server will allow the user to properly access the page with the proper content (so the new data is properly persisted, it's just not properly made available to the user).

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  julien_viet Julien Viet
                  Reporter:
                  claprun Chris Laprun
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  0 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: