Dear all,

I found a way around this problem.

I created a class with the same fields and a groovy script that takes 
all the objects of the previous class to save them into objects from the 
second class. Replace all the references to the first class by reference 
to the second class.

I was a little worried because I had hundreds of objects, but everything 
went  fine.

Hope this can help if somebody have the same problem.

Jean Couteau a écrit :
> Hi all,
>
> I found a really annoying bug today, and I am really lost solving it :
>
> I have created an application based on xwiki, i tried it on 3 different 
> test servers, using the export import between each server. My 
> application generate a lot of pages/objects. When I use the 
> export/import between the servers, I import only the application, not 
> the data. Everything worked fine, but I imported the application on the 
> prod server friday. Since then, I can create an object. When i try 
> modify it, I have the following error and stack trace :
>
> A problem occured while trying to service your request. Please contact 
> the support if this happens again.
>
> Detailed information:
>
>         Error number 3201 in 3: Exception while saving document 
> Project.0,0,0,3,0
> Wrapped Exception: Row was updated or deleted by another transaction (or 
> unsaved-value mapping was incorrect): [com.xpn.xwiki.objects.LongProperty#
>
>
> ]
> com.xpn.xwiki.XWikiException: Error number 3201 in 3: Exception while saving 
> document Project.0,0,0,3,0
> Wrapped Exception: Row was updated or deleted by another transaction (or 
> unsaved-value mapping was incorrect): [com.xpn.xwiki.objects.LongProperty#
>
>
> ]
>       at 
> com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:570)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:131)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:124)
>       at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1268)
>       at com.xpn.xwiki.web.SaveAction.save(SaveAction.java:173)
>       at com.xpn.xwiki.web.SaveAction.action(SaveAction.java:190)
>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:215)
>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:115)
>       at 
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
>       at 
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
>       at 
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
>       at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> com.xpn.xwiki.web.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:287)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:112)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>       at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
>       at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>       at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
>       at 
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
>       at 
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>       at java.lang.Thread.run(Thread.java:619)
>
>
> Wrapped Exception:
>
> org.hibernate.StaleObjectStateException: Row was updated or deleted by 
> another transaction (or unsaved-value mapping was incorrect): 
> [com.xpn.xwiki.objects.LongProperty#
>
>
> ]
>       at 
> org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1765)
>       at 
> org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2407)
>       at 
> org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2307)
>       at 
> org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2607)
>       at 
> org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:92)
>       at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
>       at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
>       at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:142)
>       at 
> org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
>       at 
> org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
>       at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
>       at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
>       at 
> org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
>       at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.endTransaction(XWikiHibernateBaseStore.java:816)
>       at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.endTransaction(XWikiHibernateBaseStore.java:787)
>       at 
> com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:560)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:131)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:124)
>       at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1268)
>       at com.xpn.xwiki.web.SaveAction.save(SaveAction.java:173)
>       at com.xpn.xwiki.web.SaveAction.action(SaveAction.java:190)
>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:215)
>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:115)
>       at 
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
>       at 
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
>       at 
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
>       at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> com.xpn.xwiki.web.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:287)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:112)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>       at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
>       at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>       at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
>       at 
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
>       at 
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>       at java.lang.Thread.run(Thread.java:619)
>
>
>     
> I can create and modify other kind of objects generated by this application 
> without any problem.
>
> In the history of the page/object, I have a version 1.1 created by me before 
> the import on the wiki (the objects have been created today, the import was 
> friday).
>
> I am not admin on the server, but the last test was on another instance of 
> xwiki on the same server and the configs are the same.
>
> Did somebody already have this problem ? How can I solve that ?
>
> Thanks in advance.
>
> Jean
>   

-- 
----
Jean Couteau
Code Lutin - http://www.codelutin.com
44 Bd des Pas Enchantés - 44230 St-Sébastien/Loire
Tél : 02 40 50 29 28 - Fax : 09 59 92 29 28 

_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to