When you have both member and memberuid attributes populated in AD, when the membership in AD is updated and synced to DS, the memberuid updates are added to the modify list again. This update then fails to be applied to DS, with err=20 (type or value exists) because the update was already applied earlier in the modify list. The code should check to see if the memberuid update is already in the modify list.
When you have both member and memberuid attributes populated in AD, when the membership in AD is updated and synced to DS, the memberuid updates are added to the modify list again. This update then fails to be applied to DS, with err=20 (type or value exists) because the update was already applied earlier in the modify list. The code should check to see if the memberuid update is already in the modify list.