Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-71051

Update the EventPublisher to execute the UserDeletedEvent only once when a user is deleted

    XMLWordPrintable

Details

    • 0
    • We collect Jira feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

    Description

      Problem Summary

      The Jira EventPublisher service continually evaluates whether a user was deleted or not upon synchronization with Crowd. If a third party plugin is listening for these events and logging them in a table or log, then this can result in a huge number of entries being recorded.

      Problem Scenario

      Here are the conditions by which we were able to trigger the UserDeletedEvent being repetitively published for any disabled user in Jira:

      • Within Crowd:
        • Add a user to a local Crowd directory.
        • Add the local Crowd directory to a Jira application configuration.
      • Perform a sync between Crowd and Jira.
      • This user now appears in Jira listed under Crowd directory.
      • Assign this user to an issue. If the user is not assigned to anything and doesn't have any content, this problem doesn't appear to occur.
      • Next, deactivate the user in Crowd
      • Again, sync Jira with Crowd.
      • The user appears in Jira as inactive.
      • In Crowd, remove the Crowd internal directory from the Jira application configuration.
        sync with Jira
      • Again, sync Jira with Crowd.
      • The user does not display in the Jira user listing though content still references his (inactive) name.
      • After the sync, one UserDeletedEvent entry appears in the Customfield Editor for Jira plugin's __ AO event table.
      • But then, each time a sync occurs with Crowd, the Jira EventPublisher executes the UserDeletedEvent event and the Customfield Editor for Jira listens for and reads this event and records it into its AO table. Over time, this table will fill up quickly.

      This behavior affects not just the Customfield Editor for Jira plugin, but any plugin listening to the UserDeletedEvent event executed by the EventPublisher.

      Possible Workarounds

      • If the plugin has the option to disable it's event logging, do so and only enable the event log when needed to gather troubleshooting information for a specific problem.
      • Another work around option might be to periodically purge old records from the AO event log table, if used.

      Attachments

        Activity

          People

            Unassigned Unassigned
            sshaw@atlassian.com Steve Shaw
            Votes:
            5 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: