Method: Webhookdb::Replicator::Base#create_table_modification
- Defined in:
- lib/webhookdb/replicator/base.rb
#create_table_modification(if_not_exists: false) ⇒ Webhookdb::Replicator::SchemaModification
Return the schema modification used to create the table where it does nto exist.
350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 |
# File 'lib/webhookdb/replicator/base.rb', line 350 def create_table_modification(if_not_exists: false) table = self.dbadapter_table columns = [self.primary_key_column, self.remote_key_column] columns.concat(self.storable_columns) # 'data' column should be last, since it's very large, we want to see other columns in psql/pgcli first columns << self.data_column adapter = Webhookdb::DBAdapter::PG.new result = Webhookdb::Replicator::SchemaModification.new result.transaction_statements << adapter.create_table_sql(table, columns, if_not_exists:) self.indices(table).each do |dbindex| result.transaction_statements << adapter.create_index_sql(dbindex, concurrently: false) end result.application_database_statements << self.service_integration.ensure_sequence_sql if self.requires_sequence? return result end |