aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/CHANGELOG.md
diff options
context:
space:
mode:
authorEzekiel Smithburg <tehgeekmeister@gmail.com>2013-01-10 00:50:52 -0800
committerEzekiel Smithburg <tehgeekmeister@gmail.com>2013-03-07 20:03:17 -0800
commitb6226c3cfb0344e8973c92bddf8276ff1d26cd08 (patch)
tree20dac789e99feec0b8b159f1443c57fec9ed6e2f /activerecord/CHANGELOG.md
parentb67043393b5ed6079989513299fe303ec3bc133b (diff)
downloadrails-b6226c3cfb0344e8973c92bddf8276ff1d26cd08.tar.gz
rails-b6226c3cfb0344e8973c92bddf8276ff1d26cd08.tar.bz2
rails-b6226c3cfb0344e8973c92bddf8276ff1d26cd08.zip
If an index can't be found by column, use the index name.
schema_statements uses the column name by default to construct the index name, and then raises an exception if it doesn't exist, even if the name option is specified, which causes #8858. this commit makes index_name_for_remove fall back to constructing the index name to remove based on the name option.
Diffstat (limited to 'activerecord/CHANGELOG.md')
-rw-r--r--activerecord/CHANGELOG.md10
1 files changed, 10 insertions, 0 deletions
diff --git a/activerecord/CHANGELOG.md b/activerecord/CHANGELOG.md
index 3b140b9ec3..0f339d39e8 100644
--- a/activerecord/CHANGELOG.md
+++ b/activerecord/CHANGELOG.md
@@ -1,5 +1,15 @@
## Rails 4.0.0 (unreleased) ##
+* When `:name` option is provided to `remove_index`, use it if there is no index by the conventional name.
+
+ For example, previously if an index was removed like so
+ `remove_index :values, column: :value, name: 'a_different_name'`
+ the generated SQL would not contain the specified index name,
+ and hence the migration would fail.
+ Fixes #8858.
+
+ *Ezekiel Smithburg*
+
* Expand `#cache_key` to consult all relevant updated timestamps.
Previously only `updated_at` column was checked, now it will