diff options
author | Andreas Brandl <abrandl@gitlab.com> | 2019-07-24 17:00:34 +0000 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2019-07-24 17:00:34 +0000 |
commit | 259493bb4cbce2ab48b7e9b959430888dc9f9d8b (patch) | |
tree | 7af4fe63145be0f15f6b14f8ba6d5949331fa39c /lib | |
parent | 25698fda236d3ab2c5327d3acd1f9fde6f2b5e04 (diff) | |
download | gitlab-ce-259493bb4cbce2ab48b7e9b959430888dc9f9d8b.tar.gz |
Enable tablesample count strategy by default
https://gitlab.com/gitlab-org/gitlab-ce/issues/58792
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitlab/database/count.rb | 12 | ||||
-rw-r--r-- | lib/gitlab/database/count/exact_count_strategy.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/database/count/reltuples_count_strategy.rb | 4 | ||||
-rw-r--r-- | lib/gitlab/database/count/tablesample_count_strategy.rb | 4 |
4 files changed, 5 insertions, 19 deletions
diff --git a/lib/gitlab/database/count.rb b/lib/gitlab/database/count.rb index f3d37ccd72a..eac61254bdf 100644 --- a/lib/gitlab/database/count.rb +++ b/lib/gitlab/database/count.rb @@ -37,16 +37,14 @@ module Gitlab # @return [Hash] of Model -> count mapping def self.approximate_counts(models, strategies: [TablesampleCountStrategy, ReltuplesCountStrategy, ExactCountStrategy]) strategies.each_with_object({}) do |strategy, counts_by_model| - if strategy.enabled? - models_with_missing_counts = models - counts_by_model.keys + models_with_missing_counts = models - counts_by_model.keys - break counts_by_model if models_with_missing_counts.empty? + break counts_by_model if models_with_missing_counts.empty? - counts = strategy.new(models_with_missing_counts).count + counts = strategy.new(models_with_missing_counts).count - counts.each do |model, count| - counts_by_model[model] = count - end + counts.each do |model, count| + counts_by_model[model] = count end end end diff --git a/lib/gitlab/database/count/exact_count_strategy.rb b/lib/gitlab/database/count/exact_count_strategy.rb index fa6951eda22..0b8fe640bf8 100644 --- a/lib/gitlab/database/count/exact_count_strategy.rb +++ b/lib/gitlab/database/count/exact_count_strategy.rb @@ -23,10 +23,6 @@ module Gitlab rescue *CONNECTION_ERRORS {} end - - def self.enabled? - true - end end end end diff --git a/lib/gitlab/database/count/reltuples_count_strategy.rb b/lib/gitlab/database/count/reltuples_count_strategy.rb index 695f6fa766e..6cd90c01ab2 100644 --- a/lib/gitlab/database/count/reltuples_count_strategy.rb +++ b/lib/gitlab/database/count/reltuples_count_strategy.rb @@ -31,10 +31,6 @@ module Gitlab {} end - def self.enabled? - Gitlab::Database.postgresql? - end - private # Models using single-type inheritance (STI) don't work with diff --git a/lib/gitlab/database/count/tablesample_count_strategy.rb b/lib/gitlab/database/count/tablesample_count_strategy.rb index 7777f31f702..e9387a91a14 100644 --- a/lib/gitlab/database/count/tablesample_count_strategy.rb +++ b/lib/gitlab/database/count/tablesample_count_strategy.rb @@ -28,10 +28,6 @@ module Gitlab {} end - def self.enabled? - Gitlab::Database.postgresql? && Feature.enabled?(:tablesample_counts) - end - private def perform_count(model, estimate) |