diff options
author | Brant Knudson <bknudson@us.ibm.com> | 2015-04-07 19:35:00 -0500 |
---|---|---|
committer | Ihar Hrachyshka <ihrachys@redhat.com> | 2015-04-08 10:28:35 +0000 |
commit | e2bbebe0083e6d6b3fa39c5895bee15965da1ea3 (patch) | |
tree | 58a771e1263b59a94c77d8de87475bb642ca3641 | |
parent | 579aad0c4162296288393fe28abdb6b2784d6e50 (diff) | |
download | keystone-e2bbebe0083e6d6b3fa39c5895bee15965da1ea3.tar.gz |
Work with pymongo 3.0
pymongo 3.0 renamed mongos_enum to read_pref_mode_from_name which
was causing the unit tests to fail.
Change-Id: Iaa7fd7221c2e6c865633ef342e6b83304a1de655
Closes-Bug: 1441393
(cherry picked from commit 7c3fe6acaef6fc283c383fb79f06e388df6e6926)
-rw-r--r-- | keystone/common/cache/backends/mongo.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/keystone/common/cache/backends/mongo.py b/keystone/common/cache/backends/mongo.py index 0a30ea0bc..5914d0dbc 100644 --- a/keystone/common/cache/backends/mongo.py +++ b/keystone/common/cache/backends/mongo.py @@ -360,8 +360,12 @@ class MongoApi(object): self._assign_data_mainpulator() if self.read_preference: - self.read_preference = pymongo.read_preferences.mongos_enum( - self.read_preference) + # pymongo 3.0 renamed mongos_enum to read_pref_mode_from_name + f = getattr(pymongo.read_preferences, + 'read_pref_mode_from_name', None) + if not f: + f = pymongo.read_preferences.mongos_enum + self.read_preference = f(self.read_preference) coll.read_preference = self.read_preference if self.w > -1: coll.write_concern['w'] = self.w |