Bitbucket Server Importer improvements

https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/20164#note_91854832 was merged! This issue tracks a number of issues to improve with the Bitbucket Server importer (and may affect other importers as well):

  • Add documentation (for 11.2): https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/21097
  • Paginate import project list (customer has 1900+ projects, so the initial status page takes a long time to load)
  • Automatically substitute spaces and other invalid characters with - or something else (this applies to other importers as well): https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/21367
  • Eliminate idle-in-transaction timeout in creating merge requests (https://gitlab.com/gitlab-org/gitlab-ce/issues/49866): https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/21173/diffs
  • Reduce memory usage (often RSS goes past 2 GB). Right now we load all pull requests into memory. May need to batch load these.
  • Improve performance. May need to implement the parallel importer approach as we do with GitHub.
  • Import approvers and approved date
  • Import closed events
  • Provide way to automatically resync existing Bitbucket pull requests

Other questions:

  • If an empty project is created first, the importer will fail immediately.
  • It seems that when I import a project, I am only allowed to use the namespace where the user doing the import is an owner (either group or user.)
  • Finally, if the BB/Stash user doesn’t exist, then action is always the user-account running the importer. It isn’t very desirable that I be the owner of such things…is there any other mechanism to control the behavior of unknown users?
Edited Nov 07, 2018 by Stan Hu
Assignee Loading
Time tracking Loading