Skip to content

Refactor bulk items into standard member creator

What does this MR do and why?

  • Moves the 'Bulk' member creation logic out of BulkCreatorService and into the basic CreatorService.
  • Removes the BulkCreatorService and will have all member creation rely on the Bulk setup instead.
  • Preps the future work of reducing queries on member creation by enabling moving of logic from CreatorService itself into a class method like some of what is done in the class method .add_users today.
  • Reduces n+1 queries for inviting emails adding them to the existing_members logic and contributes towards #354016 (closed)
  • Enables re-inviting/adding a member by email as a requester if they already exist - #358626 (closed)
  • Ensures all uses of the CreatorService go through the add_users class method to ensure existing_members is found and forgoing the need to use find_or_initialize_by in the Creator itself.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #339870 (closed)

Edited by Doug Stull

Merge request reports