diff options
| author | Jenkins <jenkins@review.openstack.org> | 2013-06-13 19:06:20 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2013-06-13 19:06:20 +0000 |
| commit | 2ebca96d40e98b138816289ef74fe683835953aa (patch) | |
| tree | 2a5807cb1f9a5526db4c0519bab3d99337977544 /nova/compute | |
| parent | 739e6137b8bcd43d991496cc397859b6d02569ac (diff) | |
| parent | 4aee80dd31131675ae0ab9f927b2d4aed0b8426a (diff) | |
| download | nova-2ebca96d40e98b138816289ef74fe683835953aa.tar.gz nova-2ebca96d40e98b138816289ef74fe683835953aa.tar.xz nova-2ebca96d40e98b138816289ef74fe683835953aa.zip | |
Merge "Sending volume IO usage broken"
Diffstat (limited to 'nova/compute')
| -rwxr-xr-x | nova/compute/manager.py | 8 | ||||
| -rw-r--r-- | nova/compute/utils.py | 9 |
2 files changed, 10 insertions, 7 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 2ae435f9a..62e8fedee 100755 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -3844,7 +3844,7 @@ class ComputeManager(manager.SchedulerDependentManager): return compute_host_bdms - def _update_volume_usage_cache(self, context, vol_usages, refreshed): + def _update_volume_usage_cache(self, context, vol_usages): """Updates the volume usage cache table with a list of stats.""" for usage in vol_usages: # Allow switching of greenthreads between queries. @@ -3854,8 +3854,7 @@ class ComputeManager(manager.SchedulerDependentManager): usage['rd_bytes'], usage['wr_req'], usage['wr_bytes'], - usage['instance'], - last_refreshed=refreshed) + usage['instance']) @periodic_task.periodic_task def _poll_volume_usage(self, context, start_time=None): @@ -3882,8 +3881,7 @@ class ComputeManager(manager.SchedulerDependentManager): except NotImplementedError: return - refreshed = timeutils.utcnow() - self._update_volume_usage_cache(context, vol_usages, refreshed) + self._update_volume_usage_cache(context, vol_usages) @periodic_task.periodic_task def _report_driver_status(self, context): diff --git a/nova/compute/utils.py b/nova/compute/utils.py index 561c3308a..9637d8773 100644 --- a/nova/compute/utils.py +++ b/nova/compute/utils.py @@ -290,8 +290,13 @@ def usage_volume_info(vol_usage): tot_refreshed = vol_usage['tot_last_refreshed'] curr_refreshed = vol_usage['curr_last_refreshed'] - last_refreshed_time = (tot_refreshed if tot_refreshed > curr_refreshed - else curr_refreshed) + if tot_refreshed and curr_refreshed: + last_refreshed_time = max(tot_refreshed, curr_refreshed) + elif tot_refreshed: + last_refreshed_time = tot_refreshed + else: + # curr_refreshed must be set + last_refreshed_time = curr_refreshed usage_info = dict( volume_id=vol_usage['volume_id'], |
