From 7909518db477dbb7fa569b33a73f0b5d9469511c Mon Sep 17 00:00:00 2001 From: zhangguoqing Date: Sat, 1 Apr 2017 09:43:13 +0800 Subject: [PATCH] Improve the qty digit in sqlalchemy storage Improving the qty digit from Numeric(10,5) to Numeric(15,5). Upgrading the storage sqlalchemy DB by the cloudkitty-storage-init command. Closes-Bug: #1672685 Change-Id: If086520479703257a0453a0371a1bc184911a802 --- .../c703a1bad612_improve_qty_digit.py | 37 +++++++++++++++++++ cloudkitty/storage/sqlalchemy/models.py | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 cloudkitty/storage/sqlalchemy/alembic/versions/c703a1bad612_improve_qty_digit.py diff --git a/cloudkitty/storage/sqlalchemy/alembic/versions/c703a1bad612_improve_qty_digit.py b/cloudkitty/storage/sqlalchemy/alembic/versions/c703a1bad612_improve_qty_digit.py new file mode 100644 index 00000000..305ad17e --- /dev/null +++ b/cloudkitty/storage/sqlalchemy/alembic/versions/c703a1bad612_improve_qty_digit.py @@ -0,0 +1,37 @@ +# Copyright 2017 OpenStack Foundation +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# + +"""improve_qty_digit + +Revision ID: c703a1bad612 +Revises: 307430ab38bc +Create Date: 2017-04-01 09:33:41.434750 + +""" + +# revision identifiers, used by Alembic. +revision = 'c703a1bad612' +down_revision = '307430ab38bc' + +from alembic import op +import sqlalchemy as sa + + +def upgrade(): + with op.batch_alter_table('rated_data_frames') as batch_op: + batch_op.alter_column( + 'qty', + type_=sa.Numeric(15, 5), + existing_type=sa.Numeric()) diff --git a/cloudkitty/storage/sqlalchemy/models.py b/cloudkitty/storage/sqlalchemy/models.py index e4d092c3..79daad52 100644 --- a/cloudkitty/storage/sqlalchemy/models.py +++ b/cloudkitty/storage/sqlalchemy/models.py @@ -44,7 +44,7 @@ class RatedDataFrame(Base, models.ModelBase): nullable=False) unit = sqlalchemy.Column(sqlalchemy.String(255), nullable=False) - qty = sqlalchemy.Column(sqlalchemy.Numeric(10, 5), + qty = sqlalchemy.Column(sqlalchemy.Numeric(15, 5), nullable=False) res_type = sqlalchemy.Column(sqlalchemy.String(255), nullable=False)