Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-15739

Cannot delete or rename/move page with long name

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Major
    • None
    • 10.8
    • Storage - File System
    • None
    • Unknown

    Description

      Hello.

      I have xwiki 10.8 based on docker-image from https://hub.docker.com/_/xwiki/

      We have a problem with deletion (rename/move) of pages with long names (named in russian, but maybe in other languages too I didn't check).

      I.e. user created page named "Большой перенос переносов в непереносимую пору двумя переносчиками". In url that displayed as "%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B9%20%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%20%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%BE%D0%B2%20%D0%B2%20%D0%BD%D0%B5%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%B8%D0%BC%D1%83%D1%8E%20%D0%BF%D0%BE%D1%80%D1%83%20%D0%B4%D0%B2%D1%83%D0%BC%D1%8F%20%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D1%87%D0%B8%D0%BA%D0%B0%D0%BC%D0%B8" (and in filesystem it should be the same as I understand).

      So when user tries to delete this page he gets error:

      Some errors happened:

      • Failed to delete document [test:Большой перенос переносов в непереносимую пору двумя переносчиками.WebHome()].

       

      When we try to rename/move this page we get another error (new page is created, but old one is not deleted):

       


      • Starting job of type [refactoring/rename] with identifier [refactoring/rename/1539677001706-706]

      • Document [test » Большой перенос переносов в непереносимую пору двумя переносчиками » WebHome] has been copied to [test » 12345 » WebHome].

      • Updating the back-links for document [test » Большой перенос переносов в непереносимую пору двумя переносчиками » WebHome] in wiki [test].

      • No relative links to update in [test » 12345 » WebHome].
      • Could not make directory tree to place file in. Do you have permission to write to [/usr/local/xwiki/data/storage/test/%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B9 %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81 %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%BE%D0%B2 %D0%B2 %D0%BD%D0%B5%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%B8%D0%BC%D1%83%D1%8E %D0%BF%D0%BE%D1%80%D1%83 %D0%B4%D0%B2%D1%83%D0%BC%D1%8F %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D1%87%D0%B8%D0%BA%D0%B0%D0%BC%D0%B8/%57eb%48ome/~this/locales/~/~this/deleted-documents/12/content.xml] ?
        class com.xpn.xwiki.XWikiException: Error number 3232 in 3: Exception while saving deleted document content. at org.xwiki.store.legacy.store.internal.FilesystemRecycleBinContentStore.save(FilesystemRecycleBinContentStore.java:88) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore$1.doInHibernate(XWikiHibernateRecycleBinStore.java:279) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore$1.doInHibernate(XWikiHibernateRecycleBinStore.java:265) at com.xpn.xwiki.store.XWikiHibernateBaseStore.execute(XWikiHibernateBaseStore.java:921) at com.xpn.xwiki.store.XWikiHibernateBaseStore.executeWrite(XWikiHibernateBaseStore.java:1036) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore.saveToRecycleBin(XWikiHibernateRecycleBinStore.java:264) at com.xpn.xwiki.XWiki.deleteDocument(XWiki.java:4211) at com.xpn.xwiki.XWiki.lambda$deleteAllDocuments$0(XWiki.java:6132) at org.xwiki.refactoring.internal.batch.DefaultBatchOperationExecutor.execute(DefaultBatchOperationExecutor.java:76) at org.xwiki.refactoring.internal.batch.DefaultBatchOperationExecutor.execute(DefaultBatchOperationExecutor.java:54) at com.xpn.xwiki.XWiki.deleteAllDocuments(XWiki.java:6124) at com.xpn.xwiki.XWiki.deleteAllDocuments(XWiki.java:6117) at org.xwiki.refactoring.internal.DefaultModelBridge.delete(DefaultModelBridge.java:172) at org.xwiki.refactoring.internal.job.MoveJob.move(MoveJob.java:223) at org.xwiki.refactoring.internal.job.MoveJob.maybeMove(MoveJob.java:181) at org.xwiki.refactoring.internal.job.MoveJob$1.visit(MoveJob.java:158) at org.xwiki.refactoring.internal.job.MoveJob$1.visit(MoveJob.java:153) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentNodes(AbstractEntityJob.java:278) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentAncestorStep(AbstractEntityJob.java:311) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentAncestor(AbstractEntityJob.java:296) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentNodes(AbstractEntityJob.java:276) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocuments(AbstractEntityJob.java:261) at org.xwiki.refactoring.internal.job.MoveJob.process(MoveJob.java:152) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:79) at org.xwiki.refactoring.internal.job.MoveJob.process(MoveJob.java:105) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:68) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:52) at org.xwiki.refactoring.internal.job.AbstractEntityJobWithChecks.runInternal(AbstractEntityJobWithChecks.java:76) at org.xwiki.refactoring.internal.job.MoveJob.runInternal(MoveJob.java:81) at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206) at org.xwiki.job.AbstractJob.run(AbstractJob.java:189) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: class org.xwiki.store.TransactionException: Failure in onRun() Caused by: java.io.IOException Could not make directory tree to place file in. Do you have permission to write to [/usr/local/xwiki/data/storage/test/%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B9 %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81 %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%BE%D0%B2 %D0%B2 %D0%BD%D0%B5%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%B8%D0%BC%D1%83%D1%8E %D0%BF%D0%BE%D1%80%D1%83 %D0%B4%D0%B2%D1%83%D0%BC%D1%8F %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D1%87%D0%B8%D0%BA%D0%B0%D0%BC%D0%B8/%57eb%48ome/~this/locales/~/~this/deleted-documents/12/content.xml] ? at org.xwiki.store.TransactionRunnable.run(TransactionRunnable.java:333) at org.xwiki.store.StartableTransactionRunnable.start(StartableTransactionRunnable.java:54) at org.xwiki.store.legacy.store.internal.FilesystemRecycleBinContentStore.save(FilesystemRecycleBinContentStore.java:86) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore$1.doInHibernate(XWikiHibernateRecycleBinStore.java:279) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore$1.doInHibernate(XWikiHibernateRecycleBinStore.java:265) at com.xpn.xwiki.store.XWikiHibernateBaseStore.execute(XWikiHibernateBaseStore.java:921) at com.xpn.xwiki.store.XWikiHibernateBaseStore.executeWrite(XWikiHibernateBaseStore.java:1036) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore.saveToRecycleBin(XWikiHibernateRecycleBinStore.java:264) at com.xpn.xwiki.XWiki.deleteDocument(XWiki.java:4211) at com.xpn.xwiki.XWiki.lambda$deleteAllDocuments$0(XWiki.java:6132) at org.xwiki.refactoring.internal.batch.DefaultBatchOperationExecutor.execute(DefaultBatchOperationExecutor.java:76) at org.xwiki.refactoring.internal.batch.DefaultBatchOperationExecutor.execute(DefaultBatchOperationExecutor.java:54) at com.xpn.xwiki.XWiki.deleteAllDocuments(XWiki.java:6124) at com.xpn.xwiki.XWiki.deleteAllDocuments(XWiki.java:6117) at org.xwiki.refactoring.internal.DefaultModelBridge.delete(DefaultModelBridge.java:172) at org.xwiki.refactoring.internal.job.MoveJob.move(MoveJob.java:223) at org.xwiki.refactoring.internal.job.MoveJob.maybeMove(MoveJob.java:181) at org.xwiki.refactoring.internal.job.MoveJob$1.visit(MoveJob.java:158) at org.xwiki.refactoring.internal.job.MoveJob$1.visit(MoveJob.java:153) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentNodes(AbstractEntityJob.java:278) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentAncestorStep(AbstractEntityJob.java:311) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentAncestor(AbstractEntityJob.java:296) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentNodes(AbstractEntityJob.java:276) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocuments(AbstractEntityJob.java:261) at org.xwiki.refactoring.internal.job.MoveJob.process(MoveJob.java:152) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:79) at org.xwiki.refactoring.internal.job.MoveJob.process(MoveJob.java:105) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:68) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:52) at org.xwiki.refactoring.internal.job.AbstractEntityJobWithChecks.runInternal(AbstractEntityJobWithChecks.java:76) at org.xwiki.refactoring.internal.job.MoveJob.runInternal(MoveJob.java:81) at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206) at org.xwiki.job.AbstractJob.run(AbstractJob.java:189) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: class java.io.IOException: Could not make directory tree to place file in. Do you have permission to write to [/usr/local/xwiki/data/storage/test/%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%BE%D0%B9 %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81 %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%BE%D0%B2 %D0%B2 %D0%BD%D0%B5%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D0%B8%D0%BC%D1%83%D1%8E %D0%BF%D0%BE%D1%80%D1%83 %D0%B4%D0%B2%D1%83%D0%BC%D1%8F %D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81%D1%87%D0%B8%D0%BA%D0%B0%D0%BC%D0%B8/%57eb%48ome/~this/locales/~/~this/deleted-documents/12/content.xml] ? at org.xwiki.store.FileSaveTransactionRunnable.onRun(FileSaveTransactionRunnable.java:152) at org.xwiki.store.TransactionRunnable.run(TransactionRunnable.java:318) at org.xwiki.store.StartableTransactionRunnable.start(StartableTransactionRunnable.java:54) at org.xwiki.store.legacy.store.internal.FilesystemRecycleBinContentStore.save(FilesystemRecycleBinContentStore.java:86) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore$1.doInHibernate(XWikiHibernateRecycleBinStore.java:279) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore$1.doInHibernate(XWikiHibernateRecycleBinStore.java:265) at com.xpn.xwiki.store.XWikiHibernateBaseStore.execute(XWikiHibernateBaseStore.java:921) at com.xpn.xwiki.store.XWikiHibernateBaseStore.executeWrite(XWikiHibernateBaseStore.java:1036) at com.xpn.xwiki.store.XWikiHibernateRecycleBinStore.saveToRecycleBin(XWikiHibernateRecycleBinStore.java:264) at com.xpn.xwiki.XWiki.deleteDocument(XWiki.java:4211) at com.xpn.xwiki.XWiki.lambda$deleteAllDocuments$0(XWiki.java:6132) at org.xwiki.refactoring.internal.batch.DefaultBatchOperationExecutor.execute(DefaultBatchOperationExecutor.java:76) at org.xwiki.refactoring.internal.batch.DefaultBatchOperationExecutor.execute(DefaultBatchOperationExecutor.java:54) at com.xpn.xwiki.XWiki.deleteAllDocuments(XWiki.java:6124) at com.xpn.xwiki.XWiki.deleteAllDocuments(XWiki.java:6117) at org.xwiki.refactoring.internal.DefaultModelBridge.delete(DefaultModelBridge.java:172) at org.xwiki.refactoring.internal.job.MoveJob.move(MoveJob.java:223) at org.xwiki.refactoring.internal.job.MoveJob.maybeMove(MoveJob.java:181) at org.xwiki.refactoring.internal.job.MoveJob$1.visit(MoveJob.java:158) at org.xwiki.refactoring.internal.job.MoveJob$1.visit(MoveJob.java:153) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentNodes(AbstractEntityJob.java:278) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentAncestorStep(AbstractEntityJob.java:311) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentAncestor(AbstractEntityJob.java:296) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocumentNodes(AbstractEntityJob.java:276) at org.xwiki.refactoring.internal.job.AbstractEntityJob.visitDocuments(AbstractEntityJob.java:261) at org.xwiki.refactoring.internal.job.MoveJob.process(MoveJob.java:152) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:79) at org.xwiki.refactoring.internal.job.MoveJob.process(MoveJob.java:105) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:68) at org.xwiki.refactoring.internal.job.RenameJob.process(RenameJob.java:52) at org.xwiki.refactoring.internal.job.AbstractEntityJobWithChecks.runInternal(AbstractEntityJobWithChecks.java:76) at org.xwiki.refactoring.internal.job.MoveJob.runInternal(MoveJob.java:81) at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:206) at org.xwiki.job.AbstractJob.run(AbstractJob.java:189) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)


      • Finished job of type [refactoring/rename] with identifier [refactoring/rename/1539677001706-706]

      Attachments

        Issue Links

          Activity

            People

              tmortagne Thomas Mortagne
              abtaranov Taranov Alexey
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: