Migrating External Memberships Fail Due to Violation of UNIQUE KEY Constraint for cwd_unique_membership
Platform Notice: Cloud and Data Center - This article applies equally to both cloud and data center platforms.
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Symptoms
When running the script for migrating the external memberships in admin/migrate-external-memberships.action
, it fails.
The following appears in the atlassian-confluence.log
:
1
2
3
2013-11-09 23:46:01,042 INFO [Long running task: Migrate External Memberships] [atlassian.crowd.directory.DelegatedAuthenticationDirectory] importMembership Imported user "Michael XYZ"'s membership of remote group "Group Name" to directory "Delegated Authentication Directory".
....
2013-11-09 23:46:01,167 ERROR [Long running task: Migrate External Memberships] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Violation of UNIQUE KEY constraint 'cwd_unique_membership'. Cannot insert duplicate key in object 'dbo.cwd_membership'.
Cause
There are two different entities in LDAP are found with the same value for that attribute (CN). There is a feature request for this: CONFSERVER-23213 - Merge memberships for groups with duplicate names during LDAP directory sync
Workaround
Change the Group Search Filter in the User Directory Configuration so that it excludes the offending group. Example:
1
(&(objectclass=groupOfNames)(!(CN=Group Name)))
Perform the migration again
If users are not able to log into Confluence after the migrations completes, please change the Group Search Filter back to the previous filter.
Was this helpful?