Zimbra offers Open Source email server software and shared calendar for Linux and the Mac
Go Back   Zimbra :: Forums > Zimbra Collaboration Suite > Zimlets

Welcome to the Zimbra :: Forums!
Welcome, if you would like to post a comment please register. We also encourage you to explore all things Zimbra with our team and members of the community.

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 08-10-2010, 11:12 PM
Trained Alumni
 
Posts: 48
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
Reply With Quote
  #2 (permalink)  
Old 08-11-2010, 02:18 AM
Moderator
 
Posts: 7,929
Default

This sounds like it may well be a backup of the Zimbra LDAP and then delete the objects using an LDIF.
__________________
Reply With Quote
  #3 (permalink)  
Old 08-11-2010, 01:45 PM
Trained Alumni
 
Posts: 48
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
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Why Join?

Registering let's you ask questions, makes it easier to search, displays any files attached to posts, and notifies you about replies.

blog.zimbra.com




 

SEO by vBSEO ©2011, Crawlability, Inc.