-
Notifications
You must be signed in to change notification settings - Fork 304
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
DAOS-14799 container: interoperability fix for OIT OID KVS #13634
Conversation
1.The OIT OID KVS will be only created if the pool global version is greater than or equal to 2. Otherwise, pool upgrade will fail with EEXIST. (Thanks Li Wei's pointing this out) 2. To walk around the upgrade failure, the upgrade process will skip the creation of OIT OID KVS if it already exists. 3. When destroying a container, if the OIT OID KVS doesn't exist, it will be skipped for destruction. Required-githooks: true Signed-off-by: Wang Shilong <[email protected]>
Bug-tracker data: |
Test stage Functional Hardware Medium completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-13634/1/testReport/ |
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.
We might want to document somewhere the known issue that containers created by some 2.4 releases (assuming that this patch will also land to release/2.4) in 2.2 pools may not be destroyed completely if the servers are downgraded to 2.2.
I agreed, i have no idea where we should document for this? i suppose it should be documented in release 2.4 notes somewhere. maybe @ipoddubn or @Michael-Hennecke have some ideas? |
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.
looks good for a patch that would be cherry-picked to release/2.4 branch (will it be?).
On master (daos 2.6, for which DAOS_POOL_GLOBAL_VERSION=3) will the parts of the code that executes for daos 2.2 pools even get run? i.e., when a pool's global_ver=1 < DAOS_POOL_GLOBAL_VERSION_WITH_OIT_OID_KVS=2. Since in 2.6 I don't think will even allow a pool handle connection to a 2.2 pool?
Yup, in generally we don't support jump upgrading. but in the codes we don't forbid it, eg just for upgrading. I think this better go to 2.4, let's try to land it master firstly.. |
…S-14799 Required-githooks: true
1.The OIT OID KVS will be only created if the pool global version is greater than or equal to 2. Otherwise, pool upgrade will fail with EEXIST. (Thanks Li Wei's pointing this out) 2. To walk around the upgrade failure, the upgrade process will skip the creation of OIT OID KVS if it already exists. 3. When destroying a container, if the OIT OID KVS doesn't exist, it will be skipped for destruction. Signed-off-by: Wang Shilong <[email protected]>
…13662) 1.The OIT OID KVS will be only created if the pool global version is greater than or equal to 2. Otherwise, pool upgrade will fail with EEXIST. (Thanks Li Wei's pointing this out) 2. To walk around the upgrade failure, the upgrade process will skip the creation of OIT OID KVS if it already exists. 3. When destroying a container, if the OIT OID KVS doesn't exist, it will be skipped for destruction. Signed-off-by: Wang Shilong <[email protected]>
1.The OIT OID KVS will be only created if the pool global version is greater than or equal to 2. Otherwise, pool upgrade will fail with EEXIST. (Thanks Li Wei's pointing this out)
To walk around the upgrade failure, the upgrade process will skip the creation of OIT OID KVS if it already exists.
When destroying a container, if the OIT OID KVS doesn't exist, it will be skipped for destruction.
Required-githooks: true
Before requesting gatekeeper:
Features:
(orTest-tag*
) commit pragma was used or there is a reason documented that there are no appropriate tags for this PR.Gatekeeper: