[MGNLPN-394] CachingPersonalizationContentDecorator causes RepositoryException 'This session has been closed' Created: 06/Jul/17  Updated: 21/Dec/17  Resolved: 21/Dec/17

Status: Closed
Project: Magnolia Personalization
Component/s: Integration
Affects Version/s: 1.4.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Olaf Kozlowski Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 0
Labels: personalization-integration
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Java Source File CachingPersonalizationContentDecorator_Patched.java    
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:

 Description   

A bug in info.magnolia.personalization.decoration.cache.CachingPersonalizationContentDecorator causes some trouble with closed sessions on certain occasions.

In our case one of our model classes is trying to send a 404 error.
After forwarding to the 404 page, the CachingPersonalizationContentDecorator returns a node with a closed session und causes an exception (see part of stack trace below)

For now, we patched the class with a simple refreshNode Method which fetches the node in question and wraps it in a PersonalizationNodeWrapper

ERROR  info.magnolia.rendering.engine.RenderingFilter 06.07.2017 16:40:42 -- javax.jcr.RepositoryException: This session has been closed. See the chained exception for a trace of where the session was closed.
info.magnolia.jcr.RuntimeRepositoryException: javax.jcr.RepositoryException: This session has been closed. See the chained exception for a trace of where the session was closed.
	at info.magnolia.jcr.decoration.NodePredicateContentDecorator.evaluateNode(NodePredicateContentDecorator.java:71)
	at info.magnolia.rendering.engine.RenderingFilter.isVisible(RenderingFilter.java:174)
	at info.magnolia.rendering.engine.RenderingFilter.handleTemplateRequest(RenderingFilter.java:130)
	at info.magnolia.rendering.engine.RenderingFilter.doFilter(RenderingFilter.java:94)
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
	at info.magnolia.personalization.filter.VariantResolverFilter.doFilter(VariantResolverFilter.java:133)
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
	at info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:100)
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
	at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57)
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
	at info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:108)
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)



 Comments   
Comment by Sebastian Tauch [ 21/Dec/17 ]

We cannot reproduce this issue on our side anymore.

Generated at Mon Feb 12 06:37:12 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.