Results 1 to 3 of 3

Thread: Rogue zimlets stuck in LDAP and can't be undeployed

  1. #1
    Join Date
    Apr 2008
    Location
    Vancouver, BC
    Posts
    54
    Rep Power
    7

    Unhappy Rogue zimlets stuck in LDAP and can't be undeployed

    We're testing our 5.0.18 -> 6.0.7 upgrade procedure, which calls for undeploying a number of custom zimlets. Something didn't work right during the upgrade and while the zimlets aren't physically installed on any of the mailbox servers (there's four in our cluster), they're listed in LDAP. zmzimletctl undeploy [zimletname] *appears* to work:


    Code:
    2010-08-10 23:05:01,911 INFO  [Thread-1763] [] zimlet - Uninstalling Zimlet ca_sfu_icat_courseinfo from LDAP.
    2010-08-10 23:05:02,348 INFO  [Thread-1763] [] zimlet - Removing Zimlet ca_sfu_icat_courseinfo from COS default
    2010-08-10 23:05:02,666 WARN  [Thread-1763] [] zimlet - Zimlet not found: /opt/zimbra/zimlets-deployed/ca_sfu_icat_courseinfo
    2010-08-10 23:05:04,818 INFO  [Thread-1763] [] zimlet - Removing Zimlet ca_sfu_icat_courseinfo from COS earlyadopters
    2010-08-10 23:05:05,198 INFO  [Thread-1763] [] zimlet - Removing Zimlet ca_sfu_icat_courseinfo from COS equipment
    2010-08-10 23:05:05,435 INFO  [Thread-1763] [] zimlet - Removing Zimlet ca_sfu_icat_courseinfo from COS itds-earlyadopter
    2010-08-10 23:05:05,653 INFO  [Thread-1763] [] zimlet - Removing Zimlet ca_sfu_icat_courseinfo from COS locations
    2010-08-10 23:05:05,853 INFO  [Thread-1763] [] zimlet - Removing Zimlet ca_sfu_icat_courseinfo from COS techteam
    ... but the zimlets remain listed in LDAP (and in the admin console). Attempting to disable a rogue zimlet results in a stack dump being printed to STDOUT:

    Code:
    [] INFO: Disabling Zimlet ca_sfu_icat_courseinfo
    [] WARN: Zimlet not found: /opt/zimbra/zimlets-deployed/ca_sfu_icat_courseinfo
    com.zimbra.cs.zimlet.ZimletException: Cannot disable Zimlet ca_sfu_icat_courseinfo
    	at com.zimbra.cs.zimlet.ZimletException.CANNOT_DISABLE(ZimletException.java:70)
    	at com.zimbra.cs.zimlet.ZimletUtil.setZimletEnable(ZimletUtil.java:848)
    	at com.zimbra.cs.zimlet.ZimletUtil.disableZimlet(ZimletUtil.java:873)
    	at com.zimbra.cs.zimlet.ZimletUtil.dispatch(ZimletUtil.java:1829)
    	at com.zimbra.cs.zimlet.ZimletUtil.main(ZimletUtil.java:1888)
    Caused by: com.zimbra.common.service.ServiceException: system failure: unable to modify attrs: [LDAP: error code 32 - No Such Object]
    ExceptionId:main:1281506992893:07efd5967419c5c9
    Code:service.FAILURE
    	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:248)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrsInternal(LdapProvisioning.java:351)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrs(LdapProvisioning.java:314)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrs(LdapProvisioning.java:295)
    	at com.zimbra.cs.account.Provisioning.modifyAttrs(Provisioning.java:301)
    	at com.zimbra.cs.zimlet.ZimletUtil.setZimletEnable(ZimletUtil.java:843)
    	... 3 more
    Caused by: javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name 'cn=ca_sfu_icat_courseinfo,cn=zimlets,cn=zimbra'
    	at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3066)
    	at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2987)
    	at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2794)
    	at com.sun.jndi.ldap.LdapCtx.c_modifyAttributes(LdapCtx.java:1455)
    	at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_modifyAttributes(ComponentDirContext.java:255)
    	at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes(PartialCompositeDirContext.java:172)
    	at javax.naming.directory.InitialDirContext.modifyAttributes(InitialDirContext.java:153)
    	at com.zimbra.cs.account.ldap.ZimbraLdapContext.modifyAttributes(ZimbraLdapContext.java:644)
    	at com.zimbra.cs.account.ldap.LdapUtil.modifyAttrs(LdapUtil.java:421)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrsInternal(LdapProvisioning.java:336)
    	... 7 more
    [] ERROR: Error
    com.zimbra.cs.zimlet.ZimletException: Cannot disable Zimlet ca_sfu_icat_courseinfo
    	at com.zimbra.cs.zimlet.ZimletException.CANNOT_DISABLE(ZimletException.java:70)
    	at com.zimbra.cs.zimlet.ZimletUtil.setZimletEnable(ZimletUtil.java:848)
    	at com.zimbra.cs.zimlet.ZimletUtil.disableZimlet(ZimletUtil.java:873)
    	at com.zimbra.cs.zimlet.ZimletUtil.dispatch(ZimletUtil.java:1829)
    	at com.zimbra.cs.zimlet.ZimletUtil.main(ZimletUtil.java:1888)
    Caused by: com.zimbra.common.service.ServiceException: system failure: unable to modify attrs: [LDAP: error code 32 - No Such Object]
    ExceptionId:main:1281506992893:07efd5967419c5c9
    Code:service.FAILURE
    	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:248)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrsInternal(LdapProvisioning.java:351)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrs(LdapProvisioning.java:314)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrs(LdapProvisioning.java:295)
    	at com.zimbra.cs.account.Provisioning.modifyAttrs(Provisioning.java:301)
    	at com.zimbra.cs.zimlet.ZimletUtil.setZimletEnable(ZimletUtil.java:843)
    	... 3 more
    Caused by: javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name 'cn=ca_sfu_icat_courseinfo,cn=zimlets,cn=zimbra'
    	at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3066)
    	at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2987)
    	at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2794)
    	at com.sun.jndi.ldap.LdapCtx.c_modifyAttributes(LdapCtx.java:1455)
    	at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_modifyAttributes(ComponentDirContext.java:255)
    	at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes(PartialCompositeDirContext.java:172)
    	at javax.naming.directory.InitialDirContext.modifyAttributes(InitialDirContext.java:153)
    	at com.zimbra.cs.account.ldap.ZimbraLdapContext.modifyAttributes(ZimbraLdapContext.java:644)
    	at com.zimbra.cs.account.ldap.LdapUtil.modifyAttrs(LdapUtil.java:421)
    	at com.zimbra.cs.account.ldap.LdapProvisioning.modifyAttrsInternal(LdapProvisioning.java:336)
    	... 7 more
    How can I excise these ghost zimlets from LDAP? I've tried every incantation of zmprov flushCache I can think of, as well as restarting the server (zmcontrol) a number of times.
    Graham Ballantyne
    Simon Fraser University

  2. #2
    Join Date
    Nov 2006
    Location
    UK
    Posts
    8,017
    Rep Power
    25

    Default

    This sounds like it may well be a backup of the Zimbra LDAP and then delete the objects using an LDIF.

  3. #3
    Join Date
    Apr 2008
    Location
    Vancouver, BC
    Posts
    54
    Rep Power
    7

    Default

    Quote Originally Posted by uxbod View Post
    This sounds like it may well be a backup of the Zimbra LDAP and then delete the objects using an LDIF.
    Can you be more specific? I connected to the both of the cluster's LDAP servers and they aren't listed under cn=zimlets.
    Graham Ballantyne
    Simon Fraser University

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •