[ 
http://jira.xwiki.org/jira/browse/XE-186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_22022
 ] 

Sergiu Dumitriu commented on XE-186:
------------------------------------

This is caused by the fact that the default collation in mySQL is case 
insensitive. There are other problems with this mysql behavior, like XWIKI-346 
and XWIKI-920

> Changing a mistyped letter from lower to upper case in a link fails update in 
> MySQL
> -----------------------------------------------------------------------------------
>
>                 Key: XE-186
>                 URL: http://jira.xwiki.org/jira/browse/XE-186
>             Project: XWiki Enterprise
>          Issue Type: Bug
>          Components: Other
>    Affects Versions: 1.2
>         Environment: XWiki Enterprise 1.2, Windows Server 2003, MySQL 5.0.45, 
>  Apache hpptd 2.2.6, Tomcat 5.5.20
>            Reporter: Harald Ommang
>
> If you misspell a link and the corret it just by changing the case, a 
> java.sql.BatchUpdateException: Duplicate entry occurs.
> After this, the link must be removed from the page, page saved, and then 
> added corretly afterwards.
> Steps to reproduce:
> 1. Go to the Sandbox.
> 2. Create a page with name BugTest with parent Sandbox.WebHome
> 3. Just type in some text in the page and save.
> 4. Create a new page with name LinkBugTest with parent Sandbox.WebHome
> 5. In wiki edit mode, enter (note the deliberate lower case t in the link:
>       This page links to [BugTest>Bugtest.WebHome]
>       
> 6. Save & View, you will notice the question mark indicating a missing page.
> 7. Edit the page again, correct to 
>       This page links to [BugTest>BugTest.WebHome]
> 8. Save & View: KABOOM
> 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 
> Sandbox.LinkBugTest
> Wrapped Exception: Could not execute JDBC batch update
> com.xpn.xwiki.XWikiException: Error number 3201 in 3: Exception while saving 
> document Sandbox.LinkBugTest
> Wrapped Exception: Could not execute JDBC batch update
>       at 
> com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:332)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:97)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:91)
>       at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1018)
>       at com.xpn.xwiki.web.SaveAction.save(SaveAction.java:120)
>       at com.xpn.xwiki.web.SaveAction.action(SaveAction.java:129)
>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:147)
>       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:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:117)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>       at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>       at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>       at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>       at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>       at java.lang.Thread.run(Thread.java:619)
> Wrapped Exception:
> java.sql.BatchUpdateException: Duplicate entry '1801169637-BugTest.WebHome' 
> for key 1
>       at 
> com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1269)
>       at 
> com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:955)
>       at 
> org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:294)
>       at 
> org.apache.commons.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:294)
>       at 
> org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
>       at 
> org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:195)
>       at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
>       at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
>       at 
> org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297)
>       at 
> org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
>       at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:985)
>       at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:333)
>       at 
> org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
>       at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.endTransaction(XWikiHibernateBaseStore.java:701)
>       at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.endTransaction(XWikiHibernateBaseStore.java:675)
>       at 
> com.xpn.xwiki.store.XWikiHibernateStore.saveXWikiDoc(XWikiHibernateStore.java:322)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:97)
>       at 
> com.xpn.xwiki.store.XWikiCacheStore.saveXWikiDoc(XWikiCacheStore.java:91)
>       at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1018)
>       at com.xpn.xwiki.web.SaveAction.save(SaveAction.java:120)
>       at com.xpn.xwiki.web.SaveAction.action(SaveAction.java:129)
>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:147)
>       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:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:117)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>       at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>       at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>       at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>       at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>       at java.lang.Thread.run(Thread.java:619)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.xwiki.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications

Reply via email to