Class: Ridgepole::MySQL::Partition::RangePartitionChecker
- Inherits:
-
Object
- Object
- Ridgepole::MySQL::Partition::RangePartitionChecker
- Defined in:
- lib/ridgepole/mysql/partition/range_partition_checker.rb
Instance Method Summary collapse
-
#can_apply?(connection) ⇒ Boolean
Require information_schema read access.
-
#initialize(table_name, range_parser) ⇒ RangePartitionChecker
constructor
A new instance of RangePartitionChecker.
Constructor Details
#initialize(table_name, range_parser) ⇒ RangePartitionChecker
Returns a new instance of RangePartitionChecker.
5 6 7 8 |
# File 'lib/ridgepole/mysql/partition/range_partition_checker.rb', line 5 def initialize(table_name, range_parser) @table_name = table_name @applying_partition_names = range_parser.partition_names end |
Instance Method Details
#can_apply?(connection) ⇒ Boolean
Require information_schema read access
11 12 13 14 15 16 17 18 19 |
# File 'lib/ridgepole/mysql/partition/range_partition_checker.rb', line 11 def can_apply?(connection) raw_connection = connection.raw_connection db_name = raw_connection.[:database] query_string = query(db_name) embbed_partition = raw_connection.query(query_string).each.flatten embbed_partition != @applying_partition_names end |