CQ5.3: ConcurrentModificationException caused by shared JCR sessions


We are seeing the following errors in our logs Uncaught Throwable java.util.ConcurrentModificationException and javax.jcr.RepositoryException: this session has been closed.


One possible cause of this issue is a shared session used by some of the CQ5 libraries. A "shared session" is basically a single JCR session that is used concurrently by multiple threads.


In CQ5.3 there are a few known shared sessions that have been identified and resolved with patches. These patches have been delivered as the following hotfixes and feature packs:

  • Hotfix http://localhost:4502/libs/cq/packaging/content/packageshare.html/packageshare/packages/internal/day/cq530/hotfix/cq-5.3.0-hotfix-29516.html
    This patch resolves an issue where replication can fail due to shared session usage.
  • Hotfix http://localhost:4502/libs/cq/packaging/content/packageshare.html/packageshare/packages/internal/day/cq530/hotfix/cq-5.3.0-hotfix-30008.html
    This patch resolves a shared session issue in the CQ5 security libraries.
  • Feature Pack http://localhost:4502/libs/cq/packaging/content/packageshare.html/packageshare/packages/internal/day/cq530/feature/cq-5.3.0-featurepack-29433.html
    This patch resolves a shared session issue in the CQ5 workflow libraries.

Note: In order to obtain these hotfixes and feature packs, please download them from Package Share. If it does not exist yet, please request it by raising a DayCare ticket.

Applies to