Fix ScaleIO/Powerflex SDC id deletion on host disconnect - #7689
Conversation
|
@blueorangutan package |
Codecov Report
@@ Coverage Diff @@
## 4.18 #7689 +/- ##
=========================================
Coverage 13.00% 13.00%
Complexity 9013 9013
=========================================
Files 2719 2719
Lines 256854 256851 -3
Branches 40048 40047 -1
=========================================
Hits 33413 33413
+ Misses 219255 219252 -3
Partials 4186 4186
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
|
code lgtm |
yadvr
left a comment
There was a problem hiding this comment.
Changes LGTM but didn't test it, this may need a manual QA confirmation. Thanks.
|
@blueorangutan package |
|
@harikrishna-patnala a [SF] 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 6352 |
|
@blueorangutan package |
|
@borisstoyanov a [SF] 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 6354 |
|
@blueorangutan test |
|
@blueorangutan test |
|
@harikrishna-patnala a [SF] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests |
|
[SF] Trillian test result (tid-6908)
|
| if (storagePoolHost != null) { | ||
| _storagePoolHostDao.deleteStoragePoolHostDetails(hostId, poolId); | ||
| } | ||
|
|
There was a problem hiding this comment.
@harikrishna-patnala I think, better to remove the record on host disconnect as it gets updated (with any SDC Id changes) on host re-connect. Any issue, if it is deleted from storage_pool_host_ref?
Other storage providers also remove it on disconnect, check here:
There was a problem hiding this comment.
yes @sureshanaparti there is some race condition issue, entry in storage_pool_host_ref is getting deleted and the new entry is not getting added during host connect. Since we are dealing with SDC ID updation and creating a new entry if does not exist during host connect, I've removed the deleting part in host disconnect.
If the entry of SDC ID is not there in storage_pool_host_ref all Powerflex operations are affected.
There was a problem hiding this comment.
yes @sureshanaparti there is some race condition issue, entry in storage_pool_host_ref is getting deleted and the new entry is not getting added during host connect. Since we are dealing with SDC ID updation and creating a new entry if does not exist during host connect, I've removed the deleting part in host disconnect.
If the entry of SDC ID is not there in storage_pool_host_ref all Powerflex operations are affected.
@harikrishna-patnala What is that race condition issue? It's fine if dealing with SDC ID updation on host connect. What if the host is removed, and not connected again. Check if these entries of the host are removed from storage_pool_host_ref or not. If host is connected, ensure that SDC ID is properly added/updated for that host in storage_pool_host_ref, then no Powerflex operations are affected.
There was a problem hiding this comment.
I think race condition happening in multiple management server setup. Yes all entries are getting deleting when host is removed, so upon adding it again new entries will be made. Even if SDC ID is changed which is unlikely event, even then it will be updated during host connect. @sureshanaparti
|
Intermittent failures same as #7345 merging this |
Description
This PR fixes an intermittent issue where SDC id (local_path) is getting deleted and not getting populated when host connects back again.
Fix is to remove the code to delete the records from storage_pool_host_ref table. We are anyways updating the entry if the SDC ID is changed during agent restart which is anyways required inorder to get the new connections. I've quickly verified the host delete scenario to check the storage_pool_host_ref entries behavior, entries are getting deleted.
Types of changes
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?