Details
-
Bug
-
Resolution: Cannot Reproduce
-
Major
-
None
-
5.4.1
-
None
-
PostgreSQL 9.3 (via JNDI)
IcedTea 7.2.3.6
Gentoo Linux
Description
While upgrading “XWiki Enterprise - UI - Main wiki” from 5.2-M1 to 5.4.1 dozen of these errors appears in upgrade wizard:
SQL Error: 0, SQLState: 23505
ERROR: duplicate key value violates unique constraint "xwikirecyclebin_pkey" Detail: Key (xdd_id)=(16) already exists.
I dunno if it’s related, but I have xwiki.store.attachment.recyclebin.hint=file.
There’s one complete example:
Deleted document [XWikiSyntax] SQL Error: 0, SQLState: 23505 Batch entry 0 insert into xwikirecyclebin (XDD_FULLNAME, XDD_LANGUAGE, XDD_DATE, XDD_DELETER, XDD_XML, XDD_ID) values ('WorkspaceManager.WebHome', '', '2014-02-12 18:21:51.400000 +01:00:00', 'XWiki.Admin', '<?xml version="1.0" encoding="UTF-8"?> <xwikidoc> <web>WorkspaceManager</web> <name>WebHome</name> <language></language> <defaultLanguage></defaultLanguage> <translation>0</translation> <parent>Main.WebHome</parent> <creator>XWiki.Admin</creator> <author>XWiki.Admin</author> <customClass></customClass> <contentAuthor>XWiki.Admin</contentAuthor> <creationDate>1379889066000</creationDate> <date>1379889066000</date> <contentUpdateDate>1379889066000</contentUpdateDate> <version>1.1</version> <title>$services.localization.render(''workspacemanager.browse'')</title> <defaultTemplate></defaultTemplate> <validationScript></validationScript> <comment>Import</comment> <minorEdit>false</minorEdit> <syntaxId>xwiki/2.0</syntaxId> <hidden>false</hidden> <object> <class> <name>XWiki.StyleSheetExtension</name> <customClass></customClass> <customMapping></customMapping> <defaultViewSheet></defaultViewSheet> <defaultEditSheet></defaultEditSheet> <defaultWeb></defaultWeb> <nameField></nameField> <validationScript></validationScript> <cache> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>cache</name> <number>5</number> <prettyName>Caching policy</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>long|short|default|forbid</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </cache> <code> <disabled>0</disabled> <name>code</name> <number>2</number> <prettyName>Code</prettyName> <rows>20</rows> <size>50</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType> </code> <name> <disabled>0</disabled> <name>name</name> <number>1</number> <prettyName>Name</prettyName> <size>30</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.StringClass</classType> </name> <parse> <disabled>0</disabled> <displayFormType>select</displayFormType> <displayType>yesno</displayType> <name>parse</name> <number>4</number> <prettyName>Parse content</prettyName> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.BooleanClass</classType> </parse> <use> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>use</name> <number>3</number> <prettyName>Use this extension</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>currentPage=Always on this page|onDemand=On demand|always=Always on this wiki</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </use> </class> <name>WorkspaceManager.WebHome</name> <number>0</number> <className>XWiki.StyleSheetExtension</className> <guid>82861b9a-aff1-49cc-ad6c-8ad1dcc9df38</guid> <property> <cache>long</cache> </property> <property> <code>.actionjoin { background-image: url("$xwiki.getSkinFile(''icons/silk/user_add.png'')"); } .actionleave { background-image: url("$xwiki.getSkinFile(''icons/silk/user_delete.png'')"); } .actionrequestJoin { background-image: url("$xwiki.getSkinFile(''icons/silk/bell.png'')"); } .actioncancelJoinRequest { background-image: url("$xwiki.getSkinFile(''icons/silk/bell_delete.png'')"); } .actionviewInvitation { background-image: url("$xwiki.getSkinFile(''icons/silk/script.png'')"); }</code> </property> <property> <name></name> </property> <property> <parse>1</parse> </property> <property> <use>currentPage</use> </property> </object> <content>{{velocity}} #set($columns = [''wikiprettyname'', ''description'', ''owner'', ''membershipType'']) #set($columnsProperties = { ''wikiprettyname'' : { ''type'' : ''text'', ''link'' : ''field'' }, ''description'' : { ''type'' : ''text'' , ''size'' : 50 }, ''owner'' : { ''type'' : ''text'', ''size'' : 10, ''html'' : ''true'' }, ''membershipType'' : { ''type'' : ''text'', ''class'' : ''WorkspaceManager.WorkspaceClass''} }) #set($options = { ''className'' : ''XWiki.XWikiServerClass'', ''rowCount'' : 10, ''resultPage'' : ''WorkspaceManager.BrowseWorkspacesLiveTableResults'', ''translationPrefix'' : ''workspacemanager.browse.'' }) #if(!$isGuest) #set($discard = $columns.add(''_actions'')) #set($discard = $columnsProperties.put(''_actions'', { ''actions'' : [''join'', ''requestJoin'', ''cancelJoinRequest'', ''viewInvitation'', ''leave'', ''delete''] })) #end #if($hasCreateWiki) [[{{translation key="platform.workspace.createNewWorkspaceLabel"/}}>>CreateNewWorkspace]] #end #livetable(''workspaces'', $columns, $columnsProperties, $options) {{/velocity}}</content> <versions>head 1.1; access; symbols; locks; strict; comment @# @; 1.1 date 2013.09.23.00.31.06; author XWiki_2EAdmin; state full; branches; next ; desc @@ 1.1 log @Import @ text @<?xml version="1.0" encoding="UTF-8"?> <xwikidoc> <web>WorkspaceManager</web> <name>WebHome</name> <language></language> <defaultLanguage></defaultLanguage> <translation>0</translation> <parent>Main.WebHome</parent> <creator>XWiki.Admin</creator> <author>XWiki.Admin</author> <customClass></customClass> <contentAuthor>XWiki.Admin</contentAuthor> <creationDate>1379889066000</creationDate> <date>1379889066000</date> <contentUpdateDate>1379889066000</contentUpdateDate> <version>1.1</version> <title>$services.localization.render(''workspacemanager.browse'')</title> <defaultTemplate></defaultTemplate> <validationScript></validationScript> <comment>Import</comment> <minorEdit>false</minorEdit> <syntaxId>xwiki/2.0</syntaxId> <hidden>false</hidden> <object> <class&gt; <name>XWiki.StyleSheetExtension</name> <customClass></customClass> <customMapping></customMapping> <defaultViewSheet></defaultViewSheet> <defaultEditSheet></defaultEditSheet> <defaultWeb></defaultWeb> <nameField></nameField> <validationScript></validationScript> <cache> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>cache</name> <number>5</number> <prettyName>Caching policy</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>long|short|default|forbid</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </cache> <code> <disabled>0</disabled> <name>code</name> <number>2</number> <prettyName>Code</prettyName> <rows>20</rows> <size>50</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType> </code> <name> <disabled>0</disabled> <name>name</name> <number>1</number> <prettyName>Name</prettyName> <size>30</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.StringClass</classType> </name> <parse> <disabled>0</disabled> <displayFormType>select</displayFormType> <displayType>yesno</displayType> <name>parse</name> <number>4</number> <prettyName>Parse content</prettyName> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.BooleanClass</classType> </parse> <use> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>use</name> <number>3</number> <prettyName>Use this extension</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>currentPage=Always on this page|onDemand=On demand|always=Always on this wiki</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </use> </class&gt; <name>WorkspaceManager.WebHome</name> <number>0</number> <className>XWiki.StyleSheetExtension</className> <guid>82861b9a-aff1-49cc-ad6c-8ad1dcc9df38</guid> <property> <cache>long</cache> </property> <property> <code>.actionjoin { background-image: url("$xwiki.getSkinFile(''icons/silk/user_add.png'')"); } .actionleave { background-image: url("$xwiki.getSkinFile(''icons/silk/user_delete.png'')"); } .actionrequestJoin { background-image: url("$xwiki.getSkinFile(''icons/silk/bell.png'')"); } .actioncancelJoinRequest { background-image: url("$xwiki.getSkinFile(''icons/silk/bell_delete.png'')"); } .actionviewInvitation { background-image: url("$xwiki.getSkinFile(''icons/silk/script.png'')"); }</code> </property> <property> <name></name> </property> <property> <parse>1</parse> </property> <property> <use>currentPage</use> </property> </object> <content>{{velocity}} #set($columns = [''wikiprettyname'', ''description'', ''owner'', ''membershipType'']) #set($columnsProperties = { ''wikiprettyname'' : { ''type'' : ''text'', ''link'' : ''field'' }, ''description'' : { ''type'' : ''text'' , ''size'' : 50 }, ''owner'' : { ''type'' : ''text'', ''size'' : 10, ''html'' : ''true'' }, ''membershipType'' : { ''type'' : ''text'', ''class'' : ''WorkspaceManager.WorkspaceClass''} }) #set($options = { ''className'' : ''XWiki.XWikiServerClass'', ''rowCount'' : 10, ''resultPage'' : ''WorkspaceManager.BrowseWorkspacesLiveTableResults'', ''translationPrefix'' : ''workspacemanager.browse.'' }) #if(!$isGuest) #set($discard = $columns.add(''_actions'')) #set($discard = $columnsProperties.put(''_actions'', { ''actions'' : [''join'', ''requestJoin'', ''cancelJoinRequest'', ''viewInvitation'', ''leave'', ''delete''] })) #end #if($hasCreateWiki) [[{{translation key="platform.workspace.createNewWorkspaceLabel"/}}&gt;&gt;CreateNewWorkspace]] #end #livetable(''workspaces'', $columns, $columnsProperties, $options) {{/velocity}}</content></xwikidoc> @ </versions></xwikidoc>', 16) was aborted. Call getNextException to see the cause. SQL Error: 0, SQLState: 23505 ERROR: duplicate key value violates unique constraint "xwikirecyclebin_pkey" Detail: Key (xdd_id)=(16) already exists. Batch entry 0 insert into xwikirecyclebin (XDD_FULLNAME, XDD_LANGUAGE, XDD_DATE, XDD_DELETER, XDD_XML, XDD_ID) values ('WorkspaceManager.WebHome', '', '2014-02-12 18:21:51.400000 +01:00:00', 'XWiki.Admin', '<?xml version="1.0" encoding="UTF-8"?> <xwikidoc> <web>WorkspaceManager</web> <name>WebHome</name> <language></language> <defaultLanguage></defaultLanguage> <translation>0</translation> <parent>Main.WebHome</parent> <creator>XWiki.Admin</creator> <author>XWiki.Admin</author> <customClass></customClass> <contentAuthor>XWiki.Admin</contentAuthor> <creationDate>1379889066000</creationDate> <date>1379889066000</date> <contentUpdateDate>1379889066000</contentUpdateDate> <version>1.1</version> <title>$services.localization.render(''workspacemanager.browse'')</title> <defaultTemplate></defaultTemplate> <validationScript></validationScript> <comment>Import</comment> <minorEdit>false</minorEdit> <syntaxId>xwiki/2.0</syntaxId> <hidden>false</hidden> <object> <class> <name>XWiki.StyleSheetExtension</name> <customClass></customClass> <customMapping></customMapping> <defaultViewSheet></defaultViewSheet> <defaultEditSheet></defaultEditSheet> <defaultWeb></defaultWeb> <nameField></nameField> <validationScript></validationScript> <cache> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>cache</name> <number>5</number> <prettyName>Caching policy</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>long|short|default|forbid</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </cache> <code> <disabled>0</disabled> <name>code</name> <number>2</number> <prettyName>Code</prettyName> <rows>20</rows> <size>50</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType> </code> <name> <disabled>0</disabled> <name>name</name> <number>1</number> <prettyName>Name</prettyName> <size>30</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.StringClass</classType> </name> <parse> <disabled>0</disabled> <displayFormType>select</displayFormType> <displayType>yesno</displayType> <name>parse</name> <number>4</number> <prettyName>Parse content</prettyName> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.BooleanClass</classType> </parse> <use> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>use</name> <number>3</number> <prettyName>Use this extension</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>currentPage=Always on this page|onDemand=On demand|always=Always on this wiki</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </use> </class> <name>WorkspaceManager.WebHome</name> <number>0</number> <className>XWiki.StyleSheetExtension</className> <guid>82861b9a-aff1-49cc-ad6c-8ad1dcc9df38</guid> <property> <cache>long</cache> </property> <property> <code>.actionjoin { background-image: url("$xwiki.getSkinFile(''icons/silk/user_add.png'')"); } .actionleave { background-image: url("$xwiki.getSkinFile(''icons/silk/user_delete.png'')"); } .actionrequestJoin { background-image: url("$xwiki.getSkinFile(''icons/silk/bell.png'')"); } .actioncancelJoinRequest { background-image: url("$xwiki.getSkinFile(''icons/silk/bell_delete.png'')"); } .actionviewInvitation { background-image: url("$xwiki.getSkinFile(''icons/silk/script.png'')"); }</code> </property> <property> <name></name> </property> <property> <parse>1</parse> </property> <property> <use>currentPage</use> </property> </object> <content>{{velocity}} #set($columns = [''wikiprettyname'', ''description'', ''owner'', ''membershipType'']) #set($columnsProperties = { ''wikiprettyname'' : { ''type'' : ''text'', ''link'' : ''field'' }, ''description'' : { ''type'' : ''text'' , ''size'' : 50 }, ''owner'' : { ''type'' : ''text'', ''size'' : 10, ''html'' : ''true'' }, ''membershipType'' : { ''type'' : ''text'', ''class'' : ''WorkspaceManager.WorkspaceClass''} }) #set($options = { ''className'' : ''XWiki.XWikiServerClass'', ''rowCount'' : 10, ''resultPage'' : ''WorkspaceManager.BrowseWorkspacesLiveTableResults'', ''translationPrefix'' : ''workspacemanager.browse.'' }) #if(!$isGuest) #set($discard = $columns.add(''_actions'')) #set($discard = $columnsProperties.put(''_actions'', { ''actions'' : [''join'', ''requestJoin'', ''cancelJoinRequest'', ''viewInvitation'', ''leave'', ''delete''] })) #end #if($hasCreateWiki) [[{{translation key="platform.workspace.createNewWorkspaceLabel"/}}>>CreateNewWorkspace]] #end #livetable(''workspaces'', $columns, $columnsProperties, $options) {{/velocity}}</content> <versions>head 1.1; access; symbols; locks; strict; comment @# @; 1.1 date 2013.09.23.00.31.06; author XWiki_2EAdmin; state full; branches; next ; desc @@ 1.1 log @Import @ text @<?xml version="1.0" encoding="UTF-8"?> <xwikidoc> <web>WorkspaceManager</web> <name>WebHome</name> <language></language> <defaultLanguage></defaultLanguage> <translation>0</translation> <parent>Main.WebHome</parent> <creator>XWiki.Admin</creator> <author>XWiki.Admin</author> <customClass></customClass> <contentAuthor>XWiki.Admin</contentAuthor> <creationDate>1379889066000</creationDate> <date>1379889066000</date> <contentUpdateDate>1379889066000</contentUpdateDate> <version>1.1</version> <title>$services.localization.render(''workspacemanager.browse'')</title> <defaultTemplate></defaultTemplate> <validationScript></validationScript> <comment>Import</comment> <minorEdit>false</minorEdit> <syntaxId>xwiki/2.0</syntaxId> <hidden>false</hidden> <object> <class&gt; <name>XWiki.StyleSheetExtension</name> <customClass></customClass> <customMapping></customMapping> <defaultViewSheet></defaultViewSheet> <defaultEditSheet></defaultEditSheet> <defaultWeb></defaultWeb> <nameField></nameField> <validationScript></validationScript> <cache> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>cache</name> <number>5</number> <prettyName>Caching policy</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>long|short|default|forbid</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </cache> <code> <disabled>0</disabled> <name>code</name> <number>2</number> <prettyName>Code</prettyName> <rows>20</rows> <size>50</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType> </code> <name> <disabled>0</disabled> <name>name</name> <number>1</number> <prettyName>Name</prettyName> <size>30</size> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.StringClass</classType> </name> <parse> <disabled>0</disabled> <displayFormType>select</displayFormType> <displayType>yesno</displayType> <name>parse</name> <number>4</number> <prettyName>Parse content</prettyName> <unmodifiable>0</unmodifiable> <classType>com.xpn.xwiki.objects.classes.BooleanClass</classType> </parse> <use> <cache>0</cache> <disabled>0</disabled> <displayType>select</displayType> <multiSelect>0</multiSelect> <name>use</name> <number>3</number> <prettyName>Use this extension</prettyName> <relationalStorage>0</relationalStorage> <separator> </separator> <separators> ,|</separators> <size>1</size> <unmodifiable>0</unmodifiable> <values>currentPage=Always on this page|onDemand=On demand|always=Always on this wiki</values> <classType>com.xpn.xwiki.objects.classes.StaticListClass</classType> </use> </class&gt; <name>WorkspaceManager.WebHome</name> <number>0</number> <className>XWiki.StyleSheetExtension</className> <guid>82861b9a-aff1-49cc-ad6c-8ad1dcc9df38</guid> <property> <cache>long</cache> </property> <property> <code>.actionjoin { background-image: url("$xwiki.getSkinFile(''icons/silk/user_add.png'')"); } .actionleave { background-image: url("$xwiki.getSkinFile(''icons/silk/user_delete.png'')"); } .actionrequestJoin { background-image: url("$xwiki.getSkinFile(''icons/silk/bell.png'')"); } .actioncancelJoinRequest { background-image: url("$xwiki.getSkinFile(''icons/silk/bell_delete.png'')"); } .actionviewInvitation { background-image: url("$xwiki.getSkinFile(''icons/silk/script.png'')"); }</code> </property> <property> <name></name> </property> <property> <parse>1</parse> </property> <property> <use>currentPage</use> </property> </object> <content>{{velocity}} #set($columns = [''wikiprettyname'', ''description'', ''owner'', ''membershipType'']) #set($columnsProperties = { ''wikiprettyname'' : { ''type'' : ''text'', ''link'' : ''field'' }, ''description'' : { ''type'' : ''text'' , ''size'' : 50 }, ''owner'' : { ''type'' : ''text'', ''size'' : 10, ''html'' : ''true'' }, ''membershipType'' : { ''type'' : ''text'', ''class'' : ''WorkspaceManager.WorkspaceClass''} }) #set($options = { ''className'' : ''XWiki.XWikiServerClass'', ''rowCount'' : 10, ''resultPage'' : ''WorkspaceManager.BrowseWorkspacesLiveTableResults'', ''translationPrefix'' : ''workspacemanager.browse.'' }) #if(!$isGuest) #set($discard = $columns.add(''_actions'')) #set($discard = $columnsProperties.put(''_actions'', { ''actions'' : [''join'', ''requestJoin'', ''cancelJoinRequest'', ''viewInvitation'', ''leave'', ''delete''] })) #end #if($hasCreateWiki) [[{{translation key="platform.workspace.createNewWorkspaceLabel"/}}&gt;&gt;CreateNewWorkspace]] #end #livetable(''workspaces'', $columns, $columnsProperties, $options) {{/velocity}}</content></xwikidoc> @ </versions></xwikidoc>', 16) was aborted. Call getNextException to see the cause. SQL Error: 0, SQLState: 25P02 ERROR: current transaction is aborted, commands ignored until end of transaction block