activerecord-clean-db-structure
activerecord-clean-db-structure copied to clipboard
Add ignored_tables for column reordering.
This adds the ability to ignore certain tables when doing column reordering.
Having this feature is particularly useful when there are Postgres DB functions (or other such things) that rely on implied column names from the ordering of the values in the query.
In particular, there is a case where a Postgres function in our project has an INSERT statement like this:
INSERT INTO some_table VALUES(1, 'some_data', 2);
The columns are implied from the ordering, so if the ordering changes, this breaks the assumption. In CircleCI, the structure.sql
is used to initialize the test DB, so integrated testing fails with the new column ordering.