This issue has been created
There are 9 updates.
 
 
XWiki Platform / cid:jira-generated-image-avatar-4114d565-d91f-461a-9c37-cd5e79e9b105 XWIKI-23108 Open

Abusive modification of the cached document when installing a XAR extension

 
View issue   ยท   Add comment
 

Issue created

 
cid:jira-generated-image-avatar-a3ca8eae-5413-4f82-b67c-3bfb8247551e Ilie Andriuta created this issue on 14/Apr/25 16:56
 
Summary: Abusive modification of the cached document when creating XWiki 17.2.1
Issue Type: cid:jira-generated-image-avatar-4114d565-d91f-461a-9c37-cd5e79e9b105 Bug
Affects Versions: 17.2.1
Assignee: Unassigned
Attachments: 1_Abusive_modification_when_creating_XWiki_7_2_1.png, 2_Abusive_modification_when_creating_XWiki_7_2_1.png, 3_Error_when_creating_XWiki_7_2_1.png
Created: 14/Apr/25 16:56
Environment: Windows 11 Pro, Edge 135, using an instance of XWiki 17.2.1 on Oracle 19c, Tomcat 11, reproducible also on Jetty/HSQL
Priority: cid:jira-generated-image-static-major-33f91191-c46e-490c-8a1f-6abf91af78ee Major
Reporter: Ilie Andriuta
Description:

Steps to reproduce

  1. Create an instance of XWiki 17.2.1 (tested on Oracle 19c/ Tomcat 11.0.5 and on Jetty/HSQL demo version)
  2. Observe the logs from the Distribution Wizard

Expected results

No warnings/ errors are displayed.

Actual results

The following warnings are displayed in Distribution Wizard logs:

Abusive modification of the cached document
class java.lang.IllegalStateException: Abusive modification of the cached document
    at com.xpn.xwiki.doc.XWikiDocument.setMetaDataDirty(XWikiDocument.java:2457)
    at com.xpn.xwiki.objects.BaseElement.setOwnerDocument(BaseElement.java:522)
    at com.xpn.xwiki.objects.BaseCollection.setOwnerDocument(BaseCollection.java:994)
    at com.xpn.xwiki.objects.BaseCollection.addField(BaseCollection.java:546)
    at com.xpn.xwiki.objects.classes.BaseClass.addField(BaseClass.java:196)
    at com.xpn.xwiki.objects.BaseCollection.safeput(BaseCollection.java:272)
    at com.xpn.xwiki.objects.BaseCollection.apply(BaseCollection.java:968)
    at com.xpn.xwiki.objects.classes.BaseClass.apply(BaseClass.java:1590)
    at com.xpn.xwiki.doc.AbstractMandatoryClassInitializer.updateDocument(AbstractMandatoryClassInitializer.java:78)
    at org.xwiki.annotation.internal.AnnotationClassDocumentInitializer.updateDocument(AnnotationClassDocumentInitializer.java:95)
    at org.xwiki.annotation.internal.CheckAnnotationClassEventListener.onEvent(CheckAnnotationClassEventListener.java:114)
    at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:338)
    at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:303)
    at com.xpn.xwiki.XWiki.afterSave(XWiki.java:2040)
    at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2130)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocumentSetContextUser(DocumentMergeImporter.java:208)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:154)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)

and

Abusive modification of the cached document
class java.lang.IllegalStateException: Abusive modification of the cached document
    at com.xpn.xwiki.doc.XWikiDocument.setMetaDataDirty(XWikiDocument.java:2457)
    at com.xpn.xwiki.objects.BaseElement.setDirty(BaseElement.java:133)
    at com.xpn.xwiki.objects.BaseProperty.setDirty(BaseProperty.java:413)
    at com.xpn.xwiki.objects.BaseProperty.setValueDirty(BaseProperty.java:407)
    at com.xpn.xwiki.objects.BaseStringProperty.setValue(BaseStringProperty.java:61)
    at com.xpn.xwiki.objects.BaseProperty.apply(BaseProperty.java:369)
    at com.xpn.xwiki.objects.BaseCollection.apply(BaseCollection.java:977)
    at com.xpn.xwiki.doc.XWikiDocument.apply(XWikiDocument.java:9555)
    at com.xpn.xwiki.doc.XWikiDocument.apply(XWikiDocument.java:9455)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:142)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)

 
Also, on Jetty/HSQL I was able to reproduce also the following error (may have the same cause of the warnings and may be reproducible also on Tomcat, but it just didn't occur at the time I was testing):

A different object with the same identifier value was already associated with the session : [com.xpn.xwiki.doc.XWikiDocument#6152552094868048244] : [<null entity name>#<null>]
class com.xpn.xwiki.XWikiException: Error number 0 in 0: Error number 3201 in 3: Exception while saving document xwiki:XWiki.XWikiPreferences
    at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:793)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:275)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:235)
    at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2113)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocumentSetContextUser(DocumentMergeImporter.java:208)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:154)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: class org.hibernate.NonUniqueObjectException: A different object with the same identifier value was already associated with the session : [com.xpn.xwiki.doc.XWikiDocument#6152552094868048244] : [<null entity name>#<null>]
    at org.hibernate.engine.internal.StatefulPersistenceContext.checkUniqueness(StatefulPersistenceContext.java:700)
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.performUpdate(DefaultSaveOrUpdateEventListener.java:287)
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsDetached(DefaultSaveOrUpdateEventListener.java:230)
    at org.hibernate.event.internal.DefaultUpdateEventListener.performSaveOrUpdate(DefaultUpdateEventListener.java:38)
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
    at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107)
    at org.hibernate.internal.SessionImpl.fireUpdate(SessionImpl.java:694)
    at org.hibernate.internal.SessionImpl.update(SessionImpl.java:687)
    at org.hibernate.internal.SessionImpl.update(SessionImpl.java:682)
    at org.hibernate.engine.spi.SessionDelegatorBaseImpl.update(SessionDelegatorBaseImpl.java:855)
    at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:706)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:275)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:235)
    at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2113)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocumentSetContextUser(DocumentMergeImporter.java:208)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:154)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)

No warnings/ errors on XWiki console.

 
 

9 updates

 
cid:jira-generated-image-avatar-a3ca8eae-5413-4f82-b67c-3bfb8247551e Changes by Ilie Andriuta on 14/Apr/25 16:56
 
Fix Version: 17.3.0-rc-1
Description: *Steps to reproduce*
# Create an instance of XWiki 17.2.1 (tested on Oracle 19c/ Tomcat 11.0.5 and on Jetty/HSQL demo version)
# Observe the logs from the Distribution Wizard

*Expected results*

No warnings/ errors are displayed.

*Actual results*

The following warnings are displayed in Distribution Wizard logs:
{code:java}
Abusive modification of the cached document
class java.lang.IllegalStateException: Abusive modification of the cached document
    at com.xpn.xwiki.doc.XWikiDocument.setMetaDataDirty(XWikiDocument.java:2457)
    at com.xpn.xwiki.objects.BaseElement.setOwnerDocument(BaseElement.java:522)
    at com.xpn.xwiki.objects.BaseCollection.setOwnerDocument(BaseCollection.java:994)
    at com.xpn.xwiki.objects.BaseCollection.addField(BaseCollection.java:546)
    at com.xpn.xwiki.objects.classes.BaseClass.addField(BaseClass.java:196)
    at com.xpn.xwiki.objects.BaseCollection.safeput(BaseCollection.java:272)
    at com.xpn.xwiki.objects.BaseCollection.apply(BaseCollection.java:968)
    at com.xpn.xwiki.objects.classes.BaseClass.apply(BaseClass.java:1590)
    at com.xpn.xwiki.doc.AbstractMandatoryClassInitializer.updateDocument(AbstractMandatoryClassInitializer.java:78)
    at org.xwiki.annotation.internal.AnnotationClassDocumentInitializer.updateDocument(AnnotationClassDocumentInitializer.java:95)
    at org.xwiki.annotation.internal.CheckAnnotationClassEventListener.onEvent(CheckAnnotationClassEventListener.java:114)
    at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:338)
    at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:303)
    at com.xpn.xwiki.XWiki.afterSave(XWiki.java:2040)
    at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2130)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocumentSetContextUser(DocumentMergeImporter.java:208)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:154)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583){code}
and
{code:java}
Abusive modification of the cached document
class java.lang.IllegalStateException: Abusive modification of the cached document
    at com.xpn.xwiki.doc.XWikiDocument.setMetaDataDirty(XWikiDocument.java:2457)
    at com.xpn.xwiki.objects.BaseElement.setDirty(BaseElement.java:133)
    at com.xpn.xwiki.objects.BaseProperty.setDirty(BaseProperty.java:413)
    at com.xpn.xwiki.objects.BaseProperty.setValueDirty(BaseProperty.java:407)
    at com.xpn.xwiki.objects.BaseStringProperty.setValue(BaseStringProperty.java:61)
    at com.xpn.xwiki.objects.BaseProperty.apply(BaseProperty.java:369)
    at com.xpn.xwiki.objects.BaseCollection.apply(BaseCollection.java:977)
    at com.xpn.xwiki.doc.XWikiDocument.apply(XWikiDocument.java:9555)
    at com.xpn.xwiki.doc.XWikiDocument.apply(XWikiDocument.java:9455)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:142)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583){code}
 
Also, on Jetty/HSQL I was able to reproduce also the following error (may have the same cause of the warnings and may be reproducible also on Tomcat, but it just didn't occur at the time I was testing):
{code:java}
A different object with the same identifier value was already associated with the session : [com.xpn.xwiki.doc.XWikiDocument#6152552094868048244] : [<null entity name>#<null>]
class com.xpn.xwiki.XWikiException: Error number 0 in 0: Error number 3201 in 3: Exception while saving document xwiki:XWiki.XWikiPreferences
    at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:793)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:275)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:235)
    at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2113)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocumentSetContextUser(DocumentMergeImporter.java:208)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:154)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: class org.hibernate.NonUniqueObjectException: A different object with the same identifier value was already associated with the session : [com.xpn.xwiki.doc.XWikiDocument#6152552094868048244] : [<null entity name>#<null>]
    at org.hibernate.engine.internal.StatefulPersistenceContext.checkUniqueness(StatefulPersistenceContext.java:700)
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.performUpdate(DefaultSaveOrUpdateEventListener.java:287)
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsDetached(DefaultSaveOrUpdateEventListener.java:230)
    at org.hibernate.event.internal.DefaultUpdateEventListener.performSaveOrUpdate(DefaultUpdateEventListener.java:38)
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
    at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107)
    at org.hibernate.internal.SessionImpl.fireUpdate(SessionImpl.java:694)
    at org.hibernate.internal.SessionImpl.update(SessionImpl.java:687)
    at org.hibernate.internal.SessionImpl.update(SessionImpl.java:682)
    at org.hibernate.engine.spi.SessionDelegatorBaseImpl.update(SessionDelegatorBaseImpl.java:855)
    at com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:706)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:275)
    at com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:235)
    at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2113)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocumentSetContextUser(DocumentMergeImporter.java:208)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.saveDocument(DocumentMergeImporter.java:154)
    at org.xwiki.extension.xar.internal.handler.packager.DocumentMergeImporter.importDocument(DocumentMergeImporter.java:117)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importDocumentToWiki(Packager.java:230)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:184)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXARToWiki(Packager.java:157)
    at org.xwiki.extension.xar.internal.handler.packager.Packager.importXAR(Packager.java:148)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.installInternal(XarExtensionHandler.java:189)
    at org.xwiki.extension.xar.internal.handler.XarExtensionHandler.install(XarExtensionHandler.java:150)
    at org.xwiki.extension.handler.internal.DefaultExtensionHandlerManager.install(DefaultExtensionHandlerManager.java:85)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.installExtension(AbstractExtensionJob.java:330)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyAction(AbstractExtensionJob.java:233)
    at org.xwiki.extension.job.internal.AbstractExtensionJob.applyActions(AbstractExtensionJob.java:181)
    at org.xwiki.extension.job.internal.InstallJob.runInternal(InstallJob.java:140)
    at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:246)
    at org.xwiki.job.AbstractJob.run(AbstractJob.java:223)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583){code}

No warnings/ errors on XWiki console. The issue couldn't be reproduced on XWiki 17.2.0.
Priority: Major Blocker
Labels: regression
 
cid:jira-generated-image-avatar-d7c4dabd-80b9-4020-a7d2-1187032f67f0 Changes by Thomas Mortagne on 14/Apr/25 17:00
 
Summary: Abusive modification of the cached document when creating XWiki 17.2.1 installing a XAR extension
Fix Version: 16.10.6
Version: 17.2.1
Version: 16.10.5
Priority: Blocker Major