Class: PgHaMigrations::WeeklyPartmanRenameAdapter

Inherits:
AbstractPartmanRenameAdapter show all
Defined in:
lib/pg_ha_migrations/partman_rename_adapter.rb

Instance Method Summary collapse

Methods inherited from AbstractPartmanRenameAdapter

#alter_table_sql, #initialize

Constructor Details

This class inherits a constructor from PgHaMigrations::AbstractPartmanRenameAdapter

Instance Method Details

#source_datetime_stringObject



131
132
133
# File 'lib/pg_ha_migrations/partman_rename_adapter.rb', line 131

def source_datetime_string
  "IYYY\"w\"IW"
end

#source_name_suffix_patternObject



135
136
137
# File 'lib/pg_ha_migrations/partman_rename_adapter.rb', line 135

def source_name_suffix_pattern
  /\A.+_p\d{4}w\d{2}\z/
end

#target_datetime_stringObject



139
140
141
# File 'lib/pg_ha_migrations/partman_rename_adapter.rb', line 139

def target_datetime_string
  "YYYYMMDD"
end

#target_table_name(table_name) ⇒ Object



123
124
125
126
127
128
129
# File 'lib/pg_ha_migrations/partman_rename_adapter.rb', line 123

def target_table_name(table_name)
  base_name = table_name[0...-7]

  partition_datetime = DateTime.strptime(table_name.last(7), "%Gw%V")

  base_name + partition_datetime.strftime("%Y%m%d")
end