-
Notifications
You must be signed in to change notification settings - Fork 1.2k
xenserver: do not destroy halted hypervisor vm #9175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Abhishek Kumar <[email protected]>
Signed-off-by: Abhishek Kumar <[email protected]>
Signed-off-by: Abhishek Kumar <[email protected]>
@blueorangutan package |
@shwstppr a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## 4.19 #9175 +/- ##
==========================================
Coverage 15.07% 15.08%
- Complexity 11169 11173 +4
==========================================
Files 5405 5405
Lines 472677 472692 +15
Branches 60049 59523 -526
==========================================
+ Hits 71269 71283 +14
- Misses 393479 393480 +1
Partials 7929 7929
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 9794 |
Will run a round of tests here. Though I didn't see any issue in my manual testing but I'm not sure if not destroying a halted VM from hypervisor side can lead to any regressions cc @sureshanaparti @harikrishna-patnala @blueorangutan package |
@shwstppr a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10139 |
@blueorangutan test rocky8 xcpng82 |
@sureshanaparti a [SL] Trillian-Jenkins test job (rocky8 mgmt + xcpng82) has been kicked to run smoke tests |
[SF] Trillian test result (tid-10635)
|
@blueorangutan test rocky8 xcpng82 |
@sureshanaparti a [SL] Trillian-Jenkins test job (rocky8 mgmt + xcpng82) has been kicked to run smoke tests |
@blueorangutan package |
@shwstppr a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 10164 |
[SF] Trillian test result (tid-10647)
|
Looks like changes behaviour is causing issues. I'll investigate further. This can be moved out of the 4.19.1 milestone. We already have a workaround for #8123 by adding the newer guest OS(es). |
i have a cluster with 2 xcp-ng 8.2.1. Then i followed the reverse sequence. Perfect implementation. it is a small lab for testing cloudstack, everything it is virtual. |
Thanks @AlexanderKgr - looks good to me. Maybe @shwstppr can advice if there's anything else that needs testing.. |
@AlexanderKgr @shwstppr |
i will be migrated to the host that you choose |
Looks good, thanks @AlexanderKgr |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
code lgtm
I wondered if there are edge cases that
- the vm exists on two hosts (it seems will not happen), or
- vm cannot be started as the last host has communication failure.
These are difficult to be reproduced.
Xcp-ng when is configured as a cluster cannot start vm with the same name (i am thinking of it) also with the same uuid. Each instance has a unique uuid. If there is host communication error it will choose the next available |
My production cs is based on 4.20. will this be merged on 4.20? |
@blueorangutan test ol8 xcpng82 |
@Pearl1594 a [SL] Trillian-Jenkins test job (ol8 mgmt + xcpng82) has been kicked to run smoke tests |
thanks @AlexanderKgr this is targeted to 4.19. |
Thanks @AlexanderKgr for tests. |
i will test it. sorry |
it is working without issues. tried with a windows 11 instance. Shutted down vm, took snapshot. Booted, shutted down, took new snapshot. Then reverted to previous snapshot. No issues at all. |
@AlexanderKgr thanks. Nothing more from my end |
* 4.20: xenserver: do not destroy halted hypervisor vm (#9175) define the limit of projects through the UI (#10652) fix projects metrics on dashboard (#10651) systemvm: Bump systemvm template version to debian 12.10 (#10628) Enhance VPC Network Tier form to auto-populate Gateway, and Netmask (#10617)
[SF] Trillian test result (tid-12912)
|
@Pearl1594 I didn't look at the smoke tests still running and as the user reported having tested I merged. Do we need to revert or can we explain the failures by environmental issues? |
@DaanHoogland @blueorangutan test ol8 xcpng82 |
@weizhouapache a [SL] Trillian-Jenkins test job (ol8 mgmt + xcpng82) has been kicked to run smoke tests |
[SF] Trillian test result (tid-12953)
|
@shwstppr |
@weizhouapache I think you are right, we need to cleanup the halted VMs at some point and expunge seems fair. |
@weizhouapache @Pearl1594 I'm not sure but maybe code can have some additional flag to see if expunge is called and destroy the halted VM. |
Addresses apache#9175 (comment) Signed-off-by: Abhishek Kumar <[email protected]>
Description
Fixes: #8123
CloudStack Xenserver hypervisor plugin calls
VM.destroy
when the VM is stopped or found in Halted state. This PR prevents this destroy action during VM stop or other actions like snapshot. VM.destroy is already called during the execution of the start VM action which should take care of any storage, network device changes.TBD: Whether this behavioural change should be controlled by a global configuration?
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?