summaryrefslogtreecommitdiff
path: root/app/models/project_services
diff options
context:
space:
mode:
authorPaco Guzman <pacoguzmanp@gmail.com>2016-06-27 16:06:04 +0200
committerPaco Guzman <pacoguzmanp@gmail.com>2016-06-27 16:06:04 +0200
commit85b21487808fd18a0d4b984103af62f098448922 (patch)
tree63163b60cf9126ab6a09bce13564fad472e9953c /app/models/project_services
parent6acdf1fcb56c1564c4ba3649bdc74bd039adf576 (diff)
downloadgitlab-ce-proper-default-issue-tracker.tar.gz
Avoid open/close transaction in each gon helper callproper-default-issue-tracker
require 'benchmark/ips' Project.first # To load database things GitlabIssueTrackerService.first # To load database things Benchmark.ips do |x| x.config(:time => 5, :warmup => 2) x.report("current") do Project.new.default_issue_tracker.to_param end x.report("") do Project.default_issue_tracker_service_name end x.compare! end Calculating ------------------------------------- current 3.000 i/100ms 22.466k i/100ms ------------------------------------------------- current 39.875 (±15.0%) i/s - 192.000 1.444M (±14.8%) i/s - 6.605M Comparison: : 1443612.8 i/s current: 39.9 i/s - 36203.16x slower
Diffstat (limited to 'app/models/project_services')
-rw-r--r--app/models/project_services/custom_issue_tracker_service.rb3
-rw-r--r--app/models/project_services/gitlab_issue_tracker_service.rb4
-rw-r--r--app/models/project_services/jira_service.rb3
-rw-r--r--app/models/project_services/redmine_service.rb3
4 files changed, 9 insertions, 4 deletions
diff --git a/app/models/project_services/custom_issue_tracker_service.rb b/app/models/project_services/custom_issue_tracker_service.rb
index 6b2b1daa724..6a95f6eeaf9 100644
--- a/app/models/project_services/custom_issue_tracker_service.rb
+++ b/app/models/project_services/custom_issue_tracker_service.rb
@@ -1,4 +1,5 @@
class CustomIssueTrackerService < IssueTrackerService
+ NAME = 'custom_issue_tracker'
prop_accessor :title, :description, :project_url, :issues_url, :new_issue_url
@@ -19,7 +20,7 @@ class CustomIssueTrackerService < IssueTrackerService
end
def to_param
- 'custom_issue_tracker'
+ NAME
end
def fields
diff --git a/app/models/project_services/gitlab_issue_tracker_service.rb b/app/models/project_services/gitlab_issue_tracker_service.rb
index 5d17c358330..ef17ec4e393 100644
--- a/app/models/project_services/gitlab_issue_tracker_service.rb
+++ b/app/models/project_services/gitlab_issue_tracker_service.rb
@@ -1,12 +1,14 @@
class GitlabIssueTrackerService < IssueTrackerService
include Gitlab::Routing.url_helpers
+ NAME = 'gitlab'
+
prop_accessor :title, :description, :project_url, :issues_url, :new_issue_url
default_value_for :default, true
def to_param
- 'gitlab'
+ NAME
end
def project_url
diff --git a/app/models/project_services/jira_service.rb b/app/models/project_services/jira_service.rb
index beda89d3963..80c20291288 100644
--- a/app/models/project_services/jira_service.rb
+++ b/app/models/project_services/jira_service.rb
@@ -3,6 +3,7 @@ class JiraService < IssueTrackerService
include Gitlab::Routing.url_helpers
DEFAULT_API_VERSION = 2
+ NAME = 'jira'
prop_accessor :username, :password, :api_url, :jira_issue_transition_id,
:title, :description, :project_url, :issues_url, :new_issue_url
@@ -44,7 +45,7 @@ class JiraService < IssueTrackerService
end
def to_param
- 'jira'
+ NAME
end
def fields
diff --git a/app/models/project_services/redmine_service.rb b/app/models/project_services/redmine_service.rb
index 11cce3e0561..03f8440c224 100644
--- a/app/models/project_services/redmine_service.rb
+++ b/app/models/project_services/redmine_service.rb
@@ -1,4 +1,5 @@
class RedmineService < IssueTrackerService
+ NAME = 'redmine'
prop_accessor :title, :description, :project_url, :issues_url, :new_issue_url
@@ -19,6 +20,6 @@ class RedmineService < IssueTrackerService
end
def to_param
- 'redmine'
+ NAME
end
end