cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Olivier Lemasle" <olivier.lema...@apalia.net>
Subject Review Request 22339: CLOUDSTACK-6669: Fix support resize in usage server
Date Sat, 07 Jun 2014 08:26:33 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/22339/
-----------------------------------------------------------

Review request for cloudstack and Kishan Kavala.


Bugs: CLOUDSTACK-6669
    https://issues.apache.org/jira/browse/CLOUDSTACK-6669


Repository: cloudstack-git


Description
-------

This patch fixes the remaining bug in the initial fix for CLOUDSTACK-6669.
See my example here: https://issues.apache.org/jira/browse/CLOUDSTACK-6669?focusedCommentId=14020334


Diffs
-----

  usage/src/com/cloud/usage/parser/VolumeUsageParser.java cd092a9 

Diff: https://reviews.apache.org/r/22339/diff/


Testing
-------

1. Create a DATA volume with "Custom Disk", size 1GB
2. Resize it to "Custom Disk", size 3GB
3. Resize it to "Custom Disk", size 20GB
4. Change disk offering to "Medium Disk, 20GB"
5. Check cloud_usage database:

mysql> select * from usage_volume where id = 9;
+----+---------+------------+-----------+------------------+-------------+-------------+---------------------+---------------------+
| id | zone_id | account_id | domain_id | disk_offering_id | template_id | size        | created
            | deleted             |
+----+---------+------------+-----------+------------------+-------------+-------------+---------------------+---------------------+
|  9 |       1 |          2 |         1 |                6 |        NULL |  1073741824 | 2014-06-07
07:00:01 | 2014-06-07 07:02:54 |
|  9 |       1 |          2 |         1 |                6 |        NULL |  3221225472 | 2014-06-07
07:02:54 | 2014-06-07 07:26:40 |
|  9 |       1 |          2 |         1 |                6 |        NULL | 21474836480 | 2014-06-07
07:26:40 | 2014-06-07 07:29:49 |
|  9 |       1 |          2 |         1 |                4 |        NULL | 21474836480 | 2014-06-07
07:29:49 | NULL                |
+----+---------+------------+-----------+------------------+-------------+-------------+---------------------+---------------------+

and:

mysql> select description, raw_usage, offering_id, size, start_date, end_date from cloud_usage
where usage_id=9 and usage_type = 6;
+-------------------------------------------+--------------------+-------------+-------------+---------------------+---------------------+
| description                               | raw_usage          | offering_id | size    
   | start_date          | end_date            |
+-------------------------------------------+--------------------+-------------+-------------+---------------------+---------------------+
| Volume Id: 9 usage time (DiskOffering: 6) | 0.0480558350682259 |           6 |  1073741824
| 2014-06-07 06:55:00 | 2014-06-07 07:05:00 |
| Volume Id: 9 usage time (DiskOffering: 6) | 0.0350027792155743 |           6 |  3221225472
| 2014-06-07 06:55:00 | 2014-06-07 07:05:00 |
| Volume Id: 9 usage time (DiskOffering: 6) |  0.166666939854622 |           6 |  3221225472
| 2014-06-07 07:05:00 | 2014-06-07 07:15:00 |
| Volume Id: 9 usage time (DiskOffering: 6) |   0.16666667163372 |           6 |  3221225472
| 2014-06-07 07:15:00 | 2014-06-07 07:25:00 |
| Volume Id: 9 usage time (DiskOffering: 6) | 0.0277749989181757 |           6 |  3221225472
| 2014-06-07 07:25:00 | 2014-06-07 07:35:00 |
| Volume Id: 9 usage time (DiskOffering: 6) |  0.052500281482935 |           6 | 21474836480
| 2014-06-07 07:25:00 | 2014-06-07 07:35:00 |
| Volume Id: 9 usage time (DiskOffering: 4) | 0.0863919407129288 |           4 | 21474836480
| 2014-06-07 07:25:00 | 2014-06-07 07:35:00 |
+-------------------------------------------+--------------------+-------------+-------------+---------------------+---------------------+

We can see that usage records are duplicated when a volume has multiple sizes or multiple
disk offerings on a given time range. Previously, usage records were aggregated, and size
and offering_id were the values at the end of the period (see example https://issues.apache.org/jira/browse/CLOUDSTACK-6669?focusedCommentId=14020334)


Thanks,

Olivier Lemasle


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message