[MGNLGROOVY-237] Execution of Groovy scripts can lead to unclosed session exceptions Created: 31/Oct/22  Updated: 23/Oct/23

Status: Open
Project: Magnolia Groovy Module
Component/s: None
Affects Version/s: 3.0.3
Fix Version/s: None

Type: Bug Priority: Low
Reporter: Richard Gange Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

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
Epic Link: DevX Bucket
Team: DeveloperX

 Description   

When running scripts using JCR sessions you end up with exceptions in the log for unclosed sessions. It would be better if Groovy could handle this gracefully and not pollute the log file.

2022-10-27 13:18:11,237 WARN  org.apache.jackrabbit.core.SessionImpl            : Unclosed session detected. The session was opened here: 
java.lang.Exception: Stack Trace
	at org.apache.jackrabbit.core.SessionImpl.<init>(SessionImpl.java:279) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at org.apache.jackrabbit.core.SessionImpl.<init>(SessionImpl.java:239) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at org.apache.jackrabbit.core.XASessionImpl.<init>(XASessionImpl.java:101) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at org.apache.jackrabbit.core.RepositoryImpl.createSessionInstance(RepositoryImpl.java:1614) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at org.apache.jackrabbit.core.RepositoryImpl.createSession(RepositoryImpl.java:957) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1502) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at org.apache.jackrabbit.core.jndi.BindableRepository.login(BindableRepository.java:162) ~[jackrabbit-core-2.20.6.jar:2.20.6]
	at info.magnolia.repository.DefaultRepositoryManager.getSession(DefaultRepositoryManager.java:313) ~[magnolia-core-6.2.24.jar:?]
	at info.magnolia.context.DefaultRepositoryStrategy.internalGetSession(DefaultRepositoryStrategy.java:61) ~[magnolia-core-6.2.24.jar:?]
	at info.magnolia.context.AbstractRepositoryStrategy.getSession(AbstractRepositoryStrategy.java:75) ~[magnolia-core-6.2.24.jar:?]
	at info.magnolia.module.groovy.console.MgnlGroovyContextDecorator.getJCRSession(MgnlGroovyContextDecorator.java:110) ~[magnolia-groovy-3.0.3.jar:?]
	at info.magnolia.context.MgnlContext.getJCRSession(MgnlContext.java:642) ~[magnolia-core-6.2.24.jar:?]
	at info.magnolia.cms.util.QueryUtil.search(QueryUtil.java:194) ~[magnolia-core-6.2.24.jar:?]
	at info.magnolia.cms.util.QueryUtil.search(QueryUtil.java:180) ~[magnolia-core-6.2.24.jar:?]
	at info.magnolia.cms.util.QueryUtil$search.call(Unknown Source) ~[?:?]
	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) ~[groovy-3.0.12.jar:3.0.12]
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) ~[groovy-3.0.12.jar:3.0.12]
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:166) ~[groovy-3.0.12.jar:3.0.12]
	at Script1.run(Script1.groovy:17) ~[?:?]
	at info.magnolia.module.groovy.console.MgnlGroovyConsole.lambda$runAsync$0(MgnlGroovyConsole.java:152) ~[magnolia-groovy-3.0.3.jar:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_261]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_261]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_261]
	at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_261]

Generated at Mon Feb 12 05:56:51 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.