Uploaded image for project: 'Crowd Data Center'
  1. Crowd Data Center
  2. CWD-2842

Duplicate error when username case is changed in LDAP and user disappears from the directory

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Low Low
    • None
    • 2.4.2
    • None
    • None

      If you change the case of a username in LDAP, the next time the directory syncs, Crowd will throw this error about a duplicate entry in the cwd_membership table, and the user will disappear from the directory cache:

      2012-05-25 18:07:26,433 scheduler_Worker-1 ERROR [org.hibernate.util.JDBCExceptionReporter] Batch entry 0 insert into cwd_membership (parent_id, child_id, membership_type, group_type, parent_name, lower_parent_name, child_name, lower_child_name, directory_id, id) values ('720898', '65545', 'GROUP_USER', 'GROUP', 'Durarara', 'durarara', 'celty', 'celty', '32770', '786433') was aborted.  Call getNextException to see the cause.
      2012-05-25 18:07:26,433 scheduler_Worker-1 WARN [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: 23505
      2012-05-25 18:07:26,433 scheduler_Worker-1 ERROR [org.hibernate.util.JDBCExceptionReporter] ERROR: duplicate key value violates unique constraint "cwd_membership_parent_id_key"
      2012-05-25 18:07:26,434 scheduler_Worker-1 ERROR [hibernate.event.def.AbstractFlushingEventListener] Could not synchronize database state with session
      org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
              at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
              at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
              at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:254)
      

      In this example, user 'celty' was changed to user 'CeltY' when the error occurred.

      The next time the directory syncs, the username will not exist in the database, so they will be added with the new casing of the username, however, there is no error in the UI or indication that this happened, so to the end user, it simply appears as failed logins to the applications backed by Crowd.

              Unassigned Unassigned
              alaskowski Adam Laskowski (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: