Martin Mucha has uploaded a new change for review. Change subject: core: use offsets to storing iops counts surviving device hotplugs/restarts. ......................................................................
core: use offsets to storing iops counts surviving device hotplugs/restarts. Change-Id: I0855db019b1896c655a7e73339f7d912cb4abba9 Signed-off-by: Martin Mucha <mmu...@redhat.com> --- M packaging/dbscripts/disk_image_dynamic_sp.sql M packaging/dbscripts/upgrade/03_06_0950_add_read_write_ioops_per_disc.sql 2 files changed, 24 insertions(+), 11 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/60/38760/1 diff --git a/packaging/dbscripts/disk_image_dynamic_sp.sql b/packaging/dbscripts/disk_image_dynamic_sp.sql index d51ac35..70ceb4c 100644 --- a/packaging/dbscripts/disk_image_dynamic_sp.sql +++ b/packaging/dbscripts/disk_image_dynamic_sp.sql @@ -96,6 +96,10 @@ v_vm_disk_write_ops INTEGER, v_vm_disk_read_bytes INTEGER, v_vm_disk_written_bytes INTEGER, + v_vm_disk_read_ops_offset INTEGER, + v_vm_disk_write_ops_offset INTEGER, + v_vm_disk_read_bytes_offset INTEGER, + v_vm_disk_written_bytes_offset INTEGER, v_actual_size BIGINT, v_read_latency_seconds numeric(18,9), v_write_latency_seconds numeric(18,9), @@ -108,17 +112,22 @@ UPDATE disk_image_dynamic SET - read_rate = v_read_rate, - write_rate = v_write_rate, - vm_disk_read_ops = v_vm_disk_read_ops, - vm_disk_write_ops = v_vm_disk_write_ops, - vm_disk_read_bytes = v_vm_disk_read_bytes, - vm_disk_written_bytes = v_vm_disk_written_bytes, - actual_size = v_actual_size, - read_latency_seconds = v_read_latency_seconds, - write_latency_seconds = v_write_latency_seconds, - flush_latency_seconds = v_flush_latency_seconds, - _update_date = LOCALTIMESTAMP + read_rate = v_read_rate, + write_rate = v_write_rate, + vm_disk_read_ops = CASE WHEN v_vm_disk_read_ops <= vm_disk_read_ops_offset THEN vm_disk_read_ops + v_vm_disk_read_ops ELSE vm_disk_read_ops - vm_disk_read_ops_offset END, + vm_disk_write_ops = CASE WHEN v_vm_disk_write_ops <= vm_disk_write_ops_offset THEN vm_disk_write_ops + v_vm_disk_write_ops ELSE vm_disk_write_ops - vm_disk_write_ops_offset END, + vm_disk_read_bytes = CASE WHEN v_vm_disk_read_bytes <= vm_disk_read_bytes_offset THEN vm_disk_read_bytes + v_vm_disk_read_bytes ELSE vm_disk_read_bytes - vm_disk_read_bytes_offset END, + vm_disk_written_bytes = CASE WHEN v_vm_disk_written_bytes <= vm_disk_written_bytes_offset THEN vm_disk_written_bytes + v_vm_disk_written_bytes ELSE vm_disk_written_bytes - vm_disk_written_bytes_offset END, + + vm_disk_read_ops_offset = v_vm_disk_read_ops, + vm_disk_write_ops_offset = v_vm_disk_write_ops, + vm_disk_read_bytes_offset = v_vm_disk_read_bytes, + vm_disk_written_bytes_offset = v_vm_disk_written_bytes, + actual_size = v_actual_size, + read_latency_seconds = v_read_latency_seconds, + write_latency_seconds = v_write_latency_seconds, + flush_latency_seconds = v_flush_latency_seconds, + _update_date = LOCALTIMESTAMP WHERE image_id in (SELECT distinct image_guid diff --git a/packaging/dbscripts/upgrade/03_06_0950_add_read_write_ioops_per_disc.sql b/packaging/dbscripts/upgrade/03_06_0950_add_read_write_ioops_per_disc.sql index f50ea3a..356a73f 100644 --- a/packaging/dbscripts/upgrade/03_06_0950_add_read_write_ioops_per_disc.sql +++ b/packaging/dbscripts/upgrade/03_06_0950_add_read_write_ioops_per_disc.sql @@ -2,3 +2,7 @@ SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_write_ops', ' INTEGER NOT NULL DEFAULT 0'); SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_read_bytes', ' INTEGER NOT NULL DEFAULT 0'); SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_written_bytes', ' INTEGER NOT NULL DEFAULT 0'); +SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_read_ops_offset', ' INTEGER NOT NULL DEFAULT 0'); +SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_write_ops_offset', ' INTEGER NOT NULL DEFAULT 0'); +SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_read_bytes_offset', ' INTEGER NOT NULL DEFAULT 0'); +SELECT fn_db_add_column('disk_image_dynamic', 'vm_disk_written_bytes_offset', ' INTEGER NOT NULL DEFAULT 0'); -- To view, visit https://gerrit.ovirt.org/38760 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0855db019b1896c655a7e73339f7d912cb4abba9 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Mucha <mmu...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches