Class: Gitlab::Database::Partitioning::Time::BaseStrategy
- Inherits:
-
Object
- Object
- Gitlab::Database::Partitioning::Time::BaseStrategy
show all
- Defined in:
- lib/gitlab/database/partitioning/time/base_strategy.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Constructor Details
#initialize(model, partitioning_key, retain_for: nil, retain_non_empty_partitions: false, analyze_interval: nil) ⇒ BaseStrategy
Returns a new instance of BaseStrategy.
12
13
14
15
16
17
18
19
20
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 12
def initialize(
model, partitioning_key, retain_for: nil, retain_non_empty_partitions: false,
analyze_interval: nil)
@model = model
@partitioning_key = partitioning_key
@retain_for = retain_for
@retain_non_empty_partitions = retain_non_empty_partitions
@analyze_interval = analyze_interval
end
|
Instance Attribute Details
#analyze_interval ⇒ Object
Returns the value of attribute analyze_interval.
8
9
10
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 8
def analyze_interval
@analyze_interval
end
|
#model ⇒ Object
Returns the value of attribute model.
8
9
10
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 8
def model
@model
end
|
#partitioning_key ⇒ Object
Returns the value of attribute partitioning_key.
8
9
10
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 8
def partitioning_key
@partitioning_key
end
|
#retain_for ⇒ Object
Returns the value of attribute retain_for.
8
9
10
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 8
def retain_for
@retain_for
end
|
#retain_non_empty_partitions ⇒ Object
Returns the value of attribute retain_non_empty_partitions.
8
9
10
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 8
def retain_non_empty_partitions
@retain_non_empty_partitions
end
|
Instance Method Details
#after_adding_partitions ⇒ Object
43
44
45
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 43
def after_adding_partitions
end
|
#current_partitions ⇒ Object
22
23
24
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 22
def current_partitions
raise NotImplementedError
end
|
#desired_partitions ⇒ Object
35
36
37
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 35
def desired_partitions
raise NotImplementedError
end
|
31
32
33
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 31
def
raise NotImplementedError
end
|
#missing_partitions ⇒ Object
Check the currently existing partitions and determine which ones are missing
27
28
29
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 27
def missing_partitions
raise NotImplementedError
end
|
#oldest_active_date ⇒ Object
51
52
53
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 51
def oldest_active_date
raise NotImplementedError
end
|
#partition_name(lower_bound) ⇒ Object
55
56
57
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 55
def partition_name(lower_bound)
raise NotImplementedError
end
|
#relevant_range ⇒ Object
39
40
41
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 39
def relevant_range
raise NotImplementedError
end
|
#validate_and_fix ⇒ Object
47
48
49
|
# File 'lib/gitlab/database/partitioning/time/base_strategy.rb', line 47
def validate_and_fix
end
|