diff options
author | Zuul <zuul@review.opendev.org> | 2021-11-10 18:02:50 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2021-11-10 18:02:50 +0000 |
commit | 2761cdac3ff6cefadc88ff2cf7d8609416cc0f9c (patch) | |
tree | 1d001a5067138ec422b477b84684820bde86d6e9 /nova/db | |
parent | dd11972b1b265c6985a5cda2b674415e959ed6e1 (diff) | |
parent | 2b02b66bae7fba5103839e48bc4c48bb30cffead (diff) | |
download | nova-2761cdac3ff6cefadc88ff2cf7d8609416cc0f9c.tar.gz |
Merge "objects: Remove 'bandwidth' fields from notifications"
Diffstat (limited to 'nova/db')
-rw-r--r-- | nova/db/main/api.py | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/nova/db/main/api.py b/nova/db/main/api.py index 5ec79263df..a89ad8125f 100644 --- a/nova/db/main/api.py +++ b/nova/db/main/api.py @@ -3547,89 +3547,6 @@ def instance_system_metadata_update(context, instance_uuid, metadata, delete): #################### -@require_context -@pick_context_manager_reader_allow_async -def bw_usage_get(context, uuid, start_period, mac): - """Return bw usage for instance and mac in a given audit period.""" - values = {'start_period': start_period} - values = convert_objects_related_datetimes(values, 'start_period') - return model_query(context, models.BandwidthUsage, read_deleted="yes").\ - filter_by(start_period=values['start_period']).\ - filter_by(uuid=uuid).\ - filter_by(mac=mac).\ - first() - - -@require_context -@pick_context_manager_reader_allow_async -def bw_usage_get_by_uuids(context, uuids, start_period): - """Return bw usages for instance(s) in a given audit period.""" - values = {'start_period': start_period} - values = convert_objects_related_datetimes(values, 'start_period') - return ( - model_query(context, models.BandwidthUsage, read_deleted="yes"). - filter(models.BandwidthUsage.uuid.in_(uuids)). - filter_by(start_period=values['start_period']). - all() - ) - - -@require_context -@oslo_db_api.wrap_db_retry(max_retries=5, retry_on_deadlock=True) -@pick_context_manager_writer -def bw_usage_update( - context, uuid, mac, start_period, bw_in, bw_out, last_ctr_in, last_ctr_out, - last_refreshed=None, -): - """Update cached bandwidth usage for an instance's network based on mac - address. Creates new record if needed. - """ - - if last_refreshed is None: - last_refreshed = timeutils.utcnow() - - # NOTE(comstud): More often than not, we'll be updating records vs - # creating records. Optimize accordingly, trying to update existing - # records. Fall back to creation when no rows are updated. - ts_values = {'last_refreshed': last_refreshed, - 'start_period': start_period} - ts_keys = ('start_period', 'last_refreshed') - ts_values = convert_objects_related_datetimes(ts_values, *ts_keys) - values = {'last_refreshed': ts_values['last_refreshed'], - 'last_ctr_in': last_ctr_in, - 'last_ctr_out': last_ctr_out, - 'bw_in': bw_in, - 'bw_out': bw_out} - # NOTE(pkholkin): order_by() is needed here to ensure that the - # same record is updated every time. It can be removed after adding - # unique constraint to this model. - bw_usage = model_query(context, models.BandwidthUsage, - read_deleted='yes').\ - filter_by(start_period=ts_values['start_period']).\ - filter_by(uuid=uuid).\ - filter_by(mac=mac).\ - order_by(expression.asc(models.BandwidthUsage.id)).first() - - if bw_usage: - bw_usage.update(values) - return bw_usage - - bwusage = models.BandwidthUsage() - bwusage.start_period = ts_values['start_period'] - bwusage.uuid = uuid - bwusage.mac = mac - bwusage.last_refreshed = ts_values['last_refreshed'] - bwusage.bw_in = bw_in - bwusage.bw_out = bw_out - bwusage.last_ctr_in = last_ctr_in - bwusage.last_ctr_out = last_ctr_out - bwusage.save(context.session) - - return bwusage - - -#################### - @require_context @pick_context_manager_reader |