mongodb-odm icon indicating copy to clipboard operation
mongodb-odm copied to clipboard

Update indexes fails if there already exists same index with different name.

Open endrsmar opened this issue 4 years ago • 2 comments

Bug Report

Running the doctrine:mongodb:schema:update command fails with error Index with name: <index_name> already exists with a different name if there already exists an index with same keys and options but different name on the collection.

Q A
BC Break yes
Version 2.1.2

Summary

Because name of an index is ignored when checking if index should be dropped in SchemaManager (PR https://github.com/doctrine/mongodb-odm/pull/2114) and because mongodb prevets creating duplicate indexes with different names, running schema update after renaming index can lead to failure.

Current behavior

Schema update fails with Index with name: <index_name> already exists with a different name.

How to reproduce

  • Create entity mapping with an index
  • run doctrine:mongodb:schema:update
  • rename the index in the mapping
  • run doctrine:mongodb:schema:update

Expected behavior

Drop the existing index, create a new one with the correct name.

endrsmar avatar Sep 30 '20 08:09 endrsmar

This issue has been automatically marked as stale because it has not had any recent activity. It will be closed in a week if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Oct 31 '20 04:10 stale[bot]

@endrsmar thanks for the report! As you can see we are currently struggling with time we can devote to ODM so would you like to work a on fix for your problem? I can offer my help on our Slack's #mongodb-odm channel but otherwise I don't know when I'll be able to look into the fixing the issue personally.

malarzm avatar Nov 03 '20 21:11 malarzm