apache / apache/cloudstack

IOPs settings not applied when disk offering changes

Open
#13,192 4 comments 0 reactions 0 assignees View on GitHub
component:kvm Severity:Minor type:bug
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

### problem

Hi all.

In our PoC installation, I configured two disk offerings with different IOPs limits (1,000 and 10,000).
When I launch a test VM, the limit is applied correctly.
```xml


10000
10000

```
While the VM is running, I can change the offering, and a success message is displayed. Everything also looks successful in the management-server.log.
```
2026-05-19 16:31:47,618 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl] (API-Job-Executor-58:[ctx-e71e416f, job-1276, ctx-ee83f22a]) (logid:2c9eb69a) Complete async job-1276, jobStatus: SUCCEEDED, resultCode: 0, result: org.apache.cloudstack.api.response.VolumeResponse/volume/{"id":"d8a513c5-6241-46a9-b0d8-f969a5a245ce","name":"ROOT-61","zoneid":"57a96360-8053-487c-9fb9-85af87ca697d","zonename":"lc01","type":"ROOT","deviceid":"0","virtualmachineid":"e90057c4-5be9-492e-a78f-dfbca7507e07","templateid":"4c6bfba7-2457-466e-8767-7b3e620bb4e5","templatename":"Win2025-test2","templatedisplaytext":"Win2025-test2","vmname":"test-win02","vmdisplayname":"test-win02","vmstate":"Running","vmtype":"User","provisioningtype":"thin","size":"(50.00 GB) 53687091200","created":"2026-05-18T13:21:38+0200","state":"Ready","account":"admin","domainid":"b6a1560b-2912-11f1-af58-0050560103cb","domain":"ROOT","domainpath":"ROOT","diskIopsReadRate":"1000","diskIopsWriteRate":"1000","diskkbsread":"(1.33 MB) 1394345","diskkbswrite":"(43.25 KB) 44290","diskioread":"(52.04 KB) 53286","diskiowrite":"(3.00 KB) 3076","diskofferingid":"1b621070-6092-4d6e-91e1-987e662f2dd1","diskofferingname":"disk-1000","diskofferingdisplaytext":"disk-1000","destroyed":"false","isextractable":"false","displayvolume":"true","quiescevm":"false","supportsstoragesnapshot":"false","deleteprotection":"false","tags":[],"hasannotations":"false"}
```
However, the configuration of the VM on the KVM host remains the same.
```xml


10000
10000

```
The limit is only applied if I completely power down the VM and then power it back on.
Is there a trick to this, or something I've missed?

### versions

ACS 4.22.0
KVM/Qemu on Ubuntu 24.04

### The steps to reproduce the bug

1.
2.
3.
...

### What to do about it?

_No response_

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue on ACS 4.22.0 with KVM/QEMU on Ubuntu 24.04, changing a running VM between disk offerings with different IOPS limits. Compare the management-server.log result with the live VM XML before and after the change; done means the running VM's iotune values change without powering it off.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
cloud, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.