-
Notifications
You must be signed in to change notification settings - Fork 306
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-14698 crtl: Create container with attributes #15300
Conversation
Ticket title is 'Creating daos container with dfuse cache settings.' |
3a1167a
to
7d8cdd0
Compare
Add new option set-attr to daos cont create allowing to define container user attributes. Features: control dfuse Required-githooks: true Signed-off-by: Cedric Koch-Hofer <[email protected]>
7d8cdd0
to
77f33b2
Compare
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-15300/4/testReport/ |
77f33b2
to
8421816
Compare
Update and add new functional tests. Features: control dfuse container Required-githooks: true Signed-off-by: Cedric Koch-Hofer <[email protected]>
8421816
to
315f440
Compare
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-15300/6/testReport/ |
Integrate reviewers comments: - Move check_attrs() to private Features: control dfuse container Required-githooks: true Signed-off-by: Cedric Koch-Hofer <[email protected]>
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-15300/7/testReport/ |
src/include/daos_uns.h
Outdated
duns_create_path_attr(daos_handle_t poh, const char *path, int count, char const *const names[], | ||
void const *const values[], size_t const sizes[], struct duns_attr_t *attrp); |
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.
im not a fan of this new API. it might be useful to have something for the command line.
but for the API, it's not a big deal to do
daos_cont_create()
daos_cont_set_attr()
I would suggest to remove it.
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.
Not sure to fully understand your comments.
Are you suggesting to remove duns_create_path_attr()
and duns_create_path()
functions or just the first one.
If we are just removing duns_create_path_attr()
, then we will have two solutions from my understanding:
- Change the dfuse code to poll the attributes of its mounted containers.
- split the function
duns_create_path_attr()
to not create and bind the container in the same function. By this way, we will be able to use the functiondaos_cont_set_attr()
between the two function calls.
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.
no you cannot remove duns_create_path()!
my question is why you are adding this new API (duns_crreate_path_attr()) ?
what is the challenge of doing:
duns_create_path()
daos_cont_set_attr()
?
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.
From my understanding, doing this will not work as the attributes are cached inside DFuse after the binding.
Thus, when we will get back from duns_create_path()
, the call to daos_cont_set_attr()
will not be taken into account by DFuse.
@ashleypittman could you confirm this.
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.
I've taken a closer look and think you're both right, having a new API doesn't seem like the right solution here, however I hadn't realised it was the same C function that both created the container and inserted it into the POSIX namespace.
The best path might be:
daos_cont_create()
daos_cont_set_attr()
duns_link_cont()
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.
I was not aware of the duns_link_cont() function, which for sure is a better solution.
Thanks @ashleypittman for the hints and @mchaarawi for the relevant remark :-)
- Remove useless new function
duns_create_path_attr()
- Split sub container creation
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.
I was not aware of the duns_link_cont() function, which for sure is a better solution. Thanks @ashleypittman for the hints and @mchaarawi for the relevant remark :-)
- Remove useless new function
duns_create_path_attr()
- Split sub container creation
Fixed with commit 819b856
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.
From the Go side, the approach looks fine to me. Will wait for the other requested changes to come through before approving.
Test stage Functional on EL 8.8 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-15300/7/execution/node/1217/log |
…/daos-14698 Required-githooks: true
Test stage Functional on EL 8.8 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-15300/35/execution/node/1210/log |
The failing test pool/query_attribute.py is a regression recently introduced on master. |
…/daos-14698 Restart CI with excluding unealthy test Features: control dfuse container daos_cmd Skip-list: QueryAttributeTest,test_query_attr:16829 Required-githooks: true
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-15300/36/testReport/ |
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://build.hpdd.intel.com/job/daos-stack/job/daos//view/change-requests/job/PR-15300/37/testReport/ |
…/daos-14698 Required-githooks: true
Increase maximal log size of NLT size as last test failed with the following message:
|
f6e3058
to
1078650
Compare
Force push was just for updating the commit message to skip known functional test failure. |
Fix NLT max log size. Features: control dfuse container daos_cmd Required-githooks: true Signed-off-by: Cedric Koch-Hofer <[email protected]>
1078650
to
d5a474a
Compare
Force push again as the skip-test macros is not working as expected. |
Test stage Functional on EL 8.8 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-15300/40/execution/node/1210/log |
…/daos-14698 Restart CI with excluding unealthy test Features: control dfuse container daos_cmd Skip-list: QueryAttributeTest,test_query_attr:16829 DfuseMUPerms,test_dfuse_mu_perms:16695 Required-githooks: true
…/daos-14698 Restart CI without excluding unealthy test Features: control dfuse container daos_cmd
…/daos-14698 Restart CI without excluding unealthy test Features: control dfuse container daos_cmd
Test stage Functional on EL 8.8 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-15300/45/execution/node/1211/log |
…/daos-14698 Allow-unstable-test: true Features: control dfuse container daos_cmd Required-githooks: true Signed-off-by: Cedric Koch-Hofer <[email protected]>
Test stage Functional on EL 8.8 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-15300/48/execution/node/1210/log |
Hello reviewers, Hopefully, I should have integrated all your comments :-)
The two errors of the functional tests are known issues:
Thanks in advance, |
@daos-stack/daos-gatekeeper please could you land this PR with the following message:
|
Looks like no more changes to GO code after go-owners last reviewed, so not requiring re-review. |
Description
Add new option
attr
todaos cont create
allowing to define container user attributes.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: