Merge "Use of ast for integers doesn't changes type"

This commit is contained in:
Jenkins
2015-10-03 19:00:50 +00:00
committed by Gerrit Code Review
5 changed files with 60 additions and 11 deletions

View File

@@ -46,6 +46,7 @@ from sqlalchemy.sql.expression import desc
from sqlalchemy.sql.expression import literal_column
from sqlalchemy.sql.expression import true
from sqlalchemy.sql import func
from sqlalchemy.sql import sqltypes
from cinder.api import common
from cinder.common import sqlalchemyutils
@@ -1104,6 +1105,18 @@ def volume_create(context, values):
return _volume_get(context, values['id'], session=session)
def get_booleans_for_table(table_name):
booleans = set()
table = getattr(models, table_name.capitalize())
if hasattr(table, '__table__'):
columns = table.__table__.columns
for column in columns:
if isinstance(column.type, sqltypes.Boolean):
booleans.add(column.name)
return booleans
@require_admin_context
def volume_data_get_for_host(context, host, count_only=False):
host_attr = models.Volume.host
@@ -3182,8 +3195,8 @@ def volume_type_encryption_update(context, volume_type_id, values):
session)
if not encryption:
raise exception.VolumeTypeEncryptionNotFound(type_id=
volume_type_id)
raise exception.VolumeTypeEncryptionNotFound(
type_id=volume_type_id)
encryption.update(values)