WCM Syndication Problems - Unable to delete the syndication pairs

Recently when I was setting up the syndication on the brand new environment faced couple of issues

  1. Was able to create the syndication pair but when I tried to delete it is failed to do with following error.

[9/7/13 23:30:08:071 EDT] 0000004f ProcessLinks  E com.ibm.icm.da.portable.data.ProcessLinks collectiveBatchRemoveLink com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 S
QL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
                                 com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
        at com.ibm.db2.jcc.am.gd.a(gd.java:60)

      ……
[9/7/13 23:30:08:098 EDT] 0000004f DeleteAdminOb E   An error occurred while deleting item
                                 com.ibm.workplace.wcm.app.ui.admin.core.model.AdminModelException: com.ibm.workplace.wcm.services.repository.RepositoryException: Messa
ge: Could not save object in repository., Cause: javax.jcr.RepositoryException: Path Add/Rename/Delete operation failed; DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQ
LERRMC=4096;PORTALUSER, DRIVER=4.11.77Thread 1509186036 : qlSyntaxErrorException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
        at com.ibm.db2.jcc.am.gd.a(gd.java:60)
        at com.ibm.db2.jcc.am.gd.a(gd.java:127)
   ....
        at com.ibm.db2.jcc.am.jn.e(jn.java:1036)
        at com.ibm.db2.jcc.am.jn.execute(jn.java:1020)
        at com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.pmiExecute(WSJdbcStatement.java:1559)
        at com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.execute(WSJdbcStatement.java:706)
        at com.ibm.icm.da.portable.common.sql.PStatement.execute(PStatement.java:161)
        at com.ibm.icm.da.portable.data.ProcessLinks.createOrCleanupTemporaryTable(ProcessLinks.java:742)
        at com.ibm.icm.da.portable.data.ProcessLinks.buildTemporaryDeleteTable(ProcessLinks.java:887)
        at com.ibm.icm.da.portable.data.ProcessLinks.collectiveBatchRemoveLink(ProcessLinks.java:611)
        at com.ibm.icm.da.portable.data.ProcessLinks.processLinks(ProcessLinks.java:1128)
      ....
        at com.ibm.icm.jcr.WorkspaceImpl.save(WorkspaceImpl.java:2287)
        at com.ibm.workplace.wcm.services.transaction.steps.repository.SaveWorkspace.execute(SaveWorkspace.java:96)
        at com.ibm.workplace.wcm.services.transaction.CompositeTransactionStep.execute(CompositeTransactionStep.java:88)
        at com.ibm.workplace.wcm.services.transaction.TxUnitOfWork$1.call(TxUnitOfWork.java:96)
        at com.ibm.workplace.wcm.util.transaction.TransactionManager.doCall(TransactionManager.java:187)
        at com.ibm.workplace.wcm.util.transaction.TransactionManager.call(TransactionManager.java:73)


        at com.ibm.workplace.wcm.app.ui.admin.subscriber.MainSubscriberModel.deleteItem(MainSubscriberModel.java:375)
        at com.ibm.workplace.wcm.app.ui.admin.core.command.DeleteAdminObjectCommand.doCommand(DeleteAdminObjectCommand.java:130)
        at com.ibm.workplace.wcm.app.ui.portlet.command.AbstractCommand.commandPerformed(AbstractCommand.java:209)
        at com.ibm.psw.wcl.core.CommandHandler.handleCommand(CommandHandler.java:74)
        at com.ibm.psw.wcl.core.markup.WHyperlink$EHyperlinkCallbackWrapper.handleTrigger(WHyperlink.java:482)
        at com.ibm.psw.wcl.core.trigger.Trigger.process(Trigger.java:304)
        at com.ibm.psw.wcl.core.trigger.TriggerManager.processTrigger(TriggerManager.java:781)
        at com.ibm.psw.wcl.portlet.WclPortletTriggerManager.handleRequest(WclPortletTriggerManager.java:260)
        at com.ibm.psw.wcl.portlet.WclPortletFacade.handleRequest(WclPortletFacade.java:497)
        at com.ibm.psw.wcl.portlet.WclPortletFacade.handleRequest(WclPortletFacade.java:478)
        at com.ibm.workplace.wcm.app.ui.admin.AdminPortlet.handleActionPerformed(AdminPortlet.java:297)
        at com.ibm.workplace.wcm.app.ui.admin.AdminPortlet.actionPerformed(AdminPortlet.java:241)
        at com.ibm.wps.pe.pc.legacy.SPIPortletInterceptorImpl.handleEvents(SPIPortletInterceptorImpl.java:337)
        at com.ibm.wps.pe.pc.legacy.invoker.impl.PortletDelegateImpl._dispatch(PortletDelegateImpl.java:385)
       ....
Caused by: com.ibm.workplace.wcm.services.repository.RepositoryException: Message: Could not save object in repository., Cause: javax.jcr.RepositoryException: Path Add/
Rename/Delete operation failed; DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77Thread 1509186036 : qlSyntaxErrorException: DB2 SQL E
rror: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
         ....
        at com.ibm.icm.da.portable.data.ProcessLinks.createOrCleanupTemporaryTable(ProcessLinks.java:742)
        at com.ibm.icm.da.portable.data.ProcessLinks.buildTemporaryDeleteTable(ProcessLinks.java:887)
         ....
        at com.ibm.icm.jcr.WorkspaceImpl.save(WorkspaceImpl.java:2287)
        at com.ibm.workplace.wcm.services.transaction.steps.repository.SaveWorkspace.execute(SaveWorkspace.java:96)
        at com.ibm.workplace.wcm.services.transaction.CompositeTransactionStep.execute(CompositeTransactionStep.java:88)
        at com.ibm.workplace.wcm.services.transaction.TxUnitOfWork$1.call(TxUnitOfWork.java:96)
          ....
        at com.ibm.workplace.wcm.services.content.ContentServiceImpl.remove(ContentServiceImpl.java:1628)
        at com.ibm.workplace.wcm.services.content.ContentService
Caused by: javax.jcr.RepositoryException: Path Add/Rename/Delete operation failed; DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77Th
read 1509186036 : qlSyntaxErrorException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
        ....
        at com.ibm.icm.da.portable.common.sql.PStatement.execute(PStatement.java:161)
        at com.ibm.icm.da.portable.data.ProcessLinks.createOrCleanupTemporaryTable(ProcessLinks.java:742)
        at com.ibm.icm.da.portable.data.ProcessLinks.buildTemporaryDeleteTable(ProcessLinks.java:887)
        ....
        at com.ibm.icm.jcr.WorkspaceImpl.save(WorkspaceImpl.java:2287)
        at com.ibm.workplace.wcm.services.transaction.steps.repository.SaveWorkspace.execute(SaveWorkspace.java:96)
        at com.ibm.workplace.wcm.services.transaction.CompositeTransactionStep.execute(CompositeTransactionStep.java:88)
        at com.ibm.workplace.wcm.services.transaction.TxUnitOfWork$1.call(TxUnitOfWork.java:96)
        at com.ibm.workplace.wcm.util.transaction.TransactionManager.doCall(TransactionManager.java:187)
        at com.ibm.workplace.wcm.util.transaction.TransactionManager.call(TransactionManager.java:73)
        at com.ibm.workplace.wcm.services.transaction.TxUnitOfWork.run(TxUnitOfWork.java:138)
        at com.ibm.workplace.wcm.services.content.ContentServiceImpl.remove(ContentServiceImpl.java:1628)
        at com.ibm.workplace.wcm.services.content.ContentServiceImpl.remove(ContentServiceImpl.java:1537)
        at com.ibm.workplace.wcm.app.ui.admin.subscriber.MainSubscriberModel.deleteItem(MainSubscriberModel.java:353)
        at com.ibm.workplace.wcm.app.ui.admin.core.command.DeleteAdminObjectCommand.doCommand(DeleteAdminObjectCommand.java:130)

Caused by: com.ibm.icm.ci.data.CDMContentException: Path Add/Rename/Delete operation failed; DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER
=4.11.77Thread 1509186036 : qlSyntaxErrorException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
    ...
        at com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.pmiExecute(WSJdbcStatement.java:1559)
        at com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.execute(WSJdbcStatement.java:706)
        at com.ibm.icm.da.portable.common.sql.PStatement.execute(PStatement.java:161)
        at com.ibm.icm.da.portable.data.ProcessLinks.createOrCleanupTemporaryTable(ProcessLinks.java:742)
        at com.ibm.icm.da.portable.data.ProcessLinks.buildTemporaryDeleteTable(ProcessLinks.java:887)
     .....
        at com.ibm.icm.jcr.WorkspaceImpl.save(WorkspaceImpl.java:2287)
        at com.ibm.workplace.wcm.services.transaction.steps.repository.SaveWorkspace.execute(SaveWorkspace.java:96)
        at com.ibm.workplace.wcm.services.transaction.CompositeTransactionStep.execute(CompositeTransactionStep.java:88)
        at com.ibm.workplace.wcm.services.transaction.TxUnitOfWork$1.call(TxUnitOfWork.java:96)
       ...
        at com.ibm.workplace.wcm.app.ui.admin.subscriber.MainSubscriberModel.deleteItem(MainSubscriberModel.java:353)
        at com.ibm.workplace.wcm.app.ui.admin.core.command.DeleteAdminObjectCommand.doCommand(DeleteAdminObjectCommand.java:130)

Caused by: com.ibm.icm.da.DBAccessException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77Thread 1509186036 : qlSyntaxErrorExcepti
on: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
         ........
        at com.ibm.icm.da.portable.data.ProcessLinks.createOrCleanupTemporaryTable(ProcessLinks.java:742)
        at com.ibm.icm.da.portable.data.ProcessLinks.buildTemporaryDeleteTable(ProcessLinks.java:887)
        at com.ibm.icm.da.portable.data.ProcessLinks.collectiveBatchRemoveLink(ProcessLinks.java:611)
        ......
        at com.ibm.workplace.wcm.services.transaction.TxUnitOfWork.run(TxUnitOfWork.java:138)
        at com.ibm.workplace.wcm.services.content.ContentServiceImpl.remove(ContentServiceImpl.java:1628)
        at com.ibm.workplace.wcm.services.content.ContentServiceImpl.remove(ContentServiceImpl.java:1537)
        at com.ibm.workplace.wcm.app.ui.admin.subscriber.MainSubscriberModel.deleteItem(MainSubscriberModel.java:353)
        at com.ibm.workplace.wcm.app.ui.admin.core.command.DeleteAdminObjectCommand.doCommand(DeleteAdminObjectCommand.java:130)


Caused by: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=4096;PORTALUSER, DRIVER=4.11.77
        at com.ibm.db2.jcc.am.gd.a(gd.java:676)
        ...
        at com.ibm.icm.da.portable.data.ProcessLinks.createOrCleanupTemporaryTable(ProcessLinks.java:742)
        at com.ibm.icm.da.portable.data.ProcessLinks.buildTemporaryDeleteTable(ProcessLinks.java:887)
        at com.ibm.icm.da.portable.data.ProcessLinks.collectiveBatchRemoveLink(ProcessLinks.java:611)
         ... 109 more



Solution:
  1. After doing some research found this is caused by "ICMLSUSRTSPACE4" tablespace issue, usually this tablespace is missed during the cluster creation and this should cause problem.
db2 "CREATE USER TEMPORARY TABLESPACE ICMLSUSRTSPACE4 PAGESIZE 4 K MANAGED BY SYSTEM USING ('icmlsusrtspace4') BUFFERPOOL ICMLSVOLATILEBP4"

  1. But in our scenario , it turns out that we have this tablespace defined already but it is not given proper privileges to portal user and caused above exception.
  2. Executed the following at DB2 to overcome above problem

GRANT USE OF TABLESPACE "ICMLSUSRTSPACE4" TO USER "PORTALUSER"
DB20000I The SQL command completed successfully. 


References:

No comments:

Post a Comment