Issue #4225
closed0029_applicability_schema_change.py fails for some users
Description
A user reported hitting this error:
Applying migration pulp.server.db.migrations.0029_applicability_schema_change failed.
Halting migrations due to a migration failure.
command SON([('dropIndexes', u'repo_profile_applicability'), ('index', 'profile_hash_-1_repo_id_-1')]) on namespace pulp_database.$cmd failed: index not found with name [profile_hash_-1_repo_id_-1]
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/pulp/server/db/manage.py", line 239, in main
return _auto_manage_db(options)
File "/usr/lib/python2.7/site-packages/pulp/server/db/manage.py", line 306, in _auto_manage_db
migrate_database(options)
File "/usr/lib/python2.7/site-packages/pulp/server/db/manage.py", line 135, in migrate_database
update_current_version=not options.test)
File "/usr/lib/python2.7/site-packages/pulp/server/db/migrate/models.py", line 189, in apply_migration
migration.migrate()
File "/usr/lib/python2.7/site-packages/pulp/server/db/migrations/0029_applicability_schema_change.py", line 52, in migrate
rpa_collection.drop_index("profile_hash_-1_repo_id_-1")
File "/usr/lib64/python2.7/site-packages/pymongo/collection.py", line 1456, in drop_index
allowable_errors=["ns not found"])
File "/usr/lib64/python2.7/site-packages/pymongo/collection.py", line 205, in _command
read_concern=read_concern)
File "/usr/lib64/python2.7/site-packages/pymongo/pool.py", line 211, in command
read_concern)
File "/usr/lib64/python2.7/site-packages/pymongo/network.py", line 100, in command
helpers._check_command_response(response_doc, msg, allowable_errors)
File "/usr/lib64/python2.7/site-packages/pymongo/helpers.py", line 196, in _check_command_response
raise OperationFailure(msg % errmsg, code, response)
OperationFailure: command SON([('dropIndexes', u'repo_profile_applicability'), ('index', 'profile_hash_-1_repo_id_-1')]) on namespace pulp_database.$cmd failed: index not found with name [profile_hash_-1_repo_id_-1]
I tested and couldn't reproduce. I think the difference might be mongo or pymongo versions. I was using:
python2-pymongo-gridfs-3.6.1-1.fc28.x86_64
python2-mongoengine-0.15.3-1.fc28.noarch
mongodb-server-3.6.6-1.fc28.x86_64
python2-pymongo-3.6.1-1.fc28.x86_64
mongodb-3.6.6-1.fc28.x86_64
The user was using:
python-pymongo-gridfs-3.2-2.el7.x86_64
python-pymongo-3.2-2.el7.x86_64
python-mongoengine-0.10.5-1.el7.noarch
mongodb-server-2.6.12-6.el7.x86_64
This patch seemed to fix the problem for the user:
Related issues
Updated by ttereshc about 6 years ago
- Has duplicate Issue #4226: Upgrade from 2.17 to 2.18 failed added
Updated by ttereshc about 6 years ago
I believe it's MongoDB version and not a pymongo one. Katello successfully used our Pulp repo which contains versions of pymongo and mongoengine installed on user's system.
I added docs to encourage MongoDB 3.x installation.
+1 to fix this issue as suggested in the gist.
Added by ttereshc about 6 years ago
Updated by ttereshc about 6 years ago
- Status changed from NEW to POST
Updated by ttereshc about 6 years ago
- Status changed from POST to MODIFIED
Applied in changeset pulp:pulp|9390a43b4749cae91e766ff15d0f1785ff6714b7.
Added by ttereshc almost 6 years ago
Revision 047a8192 | View on GitHub
Don't fail migration in case there is no exception code
Not all MongoDB versions report a specific code whe index is not found.
Updated by ttereshc almost 6 years ago
Applied in changeset pulp:pulp|047a81928a24462f14bc08ca98526051bd6df48e.
Updated by jortel@redhat.com almost 6 years ago
- Status changed from MODIFIED to 5
Updated by jortel@redhat.com almost 6 years ago
- Status changed from 5 to CLOSED - CURRENTRELEASE
Don't fail migration in case there is no exception code
Not all MongoDB versions report a specific code whe index is not found.
closes #4225 https://pulp.plan.io/issues/4225