Skip to content
Snippets Groups Projects
  1. Feb 21, 2020
  2. Oct 03, 2019
  3. Sep 25, 2019
  4. Jun 04, 2019
  5. May 16, 2019
  6. Jul 16, 2018
  7. Apr 25, 2018
    • Sean McGivern's avatar
      Move NotificationService calls to Sidekiq · b5042e53
      Sean McGivern authored
      The NotificationService has to do quite a lot of work to calculate the
      recipients for an email. Where possible, we should try to avoid doing this in an
      HTTP request, because the mail are sent by Sidekiq anyway, so there's no need to
      schedule those emails immediately.
      
      This commit creates a generic Sidekiq worker that uses Global ID to serialise
      and deserialise its arguments, then forwards them to the NotificationService.
      The NotificationService gains an `#async` method, so you can replace:
      
          notification_service.new_issue(issue, current_user)
      
      With:
      
          notification_service.async.new_issue(issue, current_user)
      
      And have everything else work as normal, except that calculating the recipients
      will be done by Sidekiq, which will then schedule further Sidekiq jobs to send
      each email.
      b5042e53
  8. Feb 28, 2018
  9. Sep 19, 2017
    • Yorick Peterse's avatar
      Fix refreshing of issues/MR count caches · 57b96eb6
      Yorick Peterse authored
      This ensures the open issues/MR count caches are refreshed properly when
      creating new issues or MRs. This MR also includes a change to the cache
      keys to ensure all caches are rebuilt on the fly.
      
      This particular problem was not caught in the test suite due to a null
      cache being used, resulting in all calls that would use a cache using
      the underlying data directly. In production the code would fail because
      a newly saved record returns an empty hash in #changes meaning checks
      such as `state_changed? || confidential_changed?` would return false for
      new rows, thus never updating the counters.
      
      Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/38061
      Verified
      57b96eb6
  10. Jul 24, 2017
  11. Jul 19, 2017
    • Sean McGivern's avatar
      Clear issuable counter caches on update · 0e488ef7
      Sean McGivern authored
      When an issuable's state changes, or one is created, we should clear the cache
      counts for a user's assigned issuables, and also the project-wide caches for
      this user type.
      0e488ef7
  12. May 26, 2017
  13. Dec 01, 2016
    • Adam Niedzielski's avatar
      Refactor JiraService by moving code out of JiraService#execute method · 11055973
      Adam Niedzielski authored
      The implicit interface of project services states that the "execute"
      method is meant to be called when project hooks are executed.
      Currently JiraService does not support any project events even though
      JiraService#supported_events says that "commit" and "merge_request"
      are supported. They are only used to render correct options in
      JIRA configuration screen, but they are not supported.
      Because of that, this commit makes "execute" method a no-op.
      11055973
  14. Nov 07, 2016
    • Yorick Peterse's avatar
      Process commits in a separate worker · 509910b8
      Yorick Peterse authored
      This moves the code used for processing commits from GitPushService to
      its own Sidekiq worker: ProcessCommitWorker.
      
      Using a Sidekiq worker allows us to process multiple commits in
      parallel. This in turn will lead to issues being closed faster and cross
      references being created faster. Furthermore by isolating this code into
      a separate class it's easier to test and maintain the code.
      
      The new worker also ensures it can efficiently check which issues can be
      closed, without having to run numerous SQL queries for every issue.
      Unverified
      509910b8
  15. Aug 12, 2016
  16. Mar 17, 2016
  17. Feb 20, 2016
  18. Dec 18, 2015
  19. Jun 12, 2015
  20. May 11, 2015
  21. Jan 26, 2015
  22. Jun 13, 2014
  23. Apr 02, 2014
Loading