diff options
author | Ionuț Arțăriși <iartarisi@suse.cz> | 2014-02-11 17:49:21 +0100 |
---|---|---|
committer | Ionuț Arțăriși <iartarisi@suse.cz> | 2014-02-11 17:51:01 +0100 |
commit | 57d7950f85368bd41e8f3660c8bce7f2728f71f3 (patch) | |
tree | 18abf40b260a9a9b90e4704f364294d047cda9da /trove/datastore | |
parent | e8bd3e6330bc985c3d95351c412c69730b63ca90 (diff) | |
download | trove-57d7950f85368bd41e8f3660c8bce7f2728f71f3.tar.gz |
fix traceback when default_version is not in the database
This commit lets the right error be raised which ends up in the cli as
e.g:
Datastore version '5.5' cannot be found.
Change-Id: I636bf43d135b2143f2a3bd1878215d7ec270330e
Closes-Bug: #1278965
Diffstat (limited to 'trove/datastore')
-rw-r--r-- | trove/datastore/models.py | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/trove/datastore/models.py b/trove/datastore/models.py index 24807b02..5cf9c029 100644 --- a/trove/datastore/models.py +++ b/trove/datastore/models.py @@ -187,19 +187,18 @@ def update_datastore(name, default_version): db_api.configure_db(CONF) try: datastore = DBDatastore.find_by(name=name) - if default_version: - version = DatastoreVersion.load(datastore, default_version) - if not version.active: - raise exception.DatastoreVersionInactive(version= - version.name) - datastore.default_version_id = version.id except exception.ModelNotFoundError: # Create a new one datastore = DBDatastore() datastore.id = utils.generate_uuid() datastore.name = name + if default_version: + version = DatastoreVersion.load(datastore, default_version) + if not version.active: + raise exception.DatastoreVersionInactive(version=version.name) datastore.default_version_id = version.id + db_api.save(datastore) |