-
Notifications
You must be signed in to change notification settings - Fork 211
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
Expand coverage/support for atomics #203
Comments
/cc @apelisse |
I think you've captured the interesting cases, thanks |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
I said in the other issue that this is fixed, but I can't find what fixed it? |
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle rotten |
I think this issue can be split into two parts:
The use case for both of these looks valid, but I think we should disallow both of them to prevent potential misconfiguration. A map is by default "granular" according to the documentation, and I think we should enforce that the atomic annotation is kept throughout all aliases in order for us to treat the type as properly configured. For example, the second code block above is technically also equivalent to type Container struct {
//+mapType=atomic
Field AtomicMapTyperef
}
//+mapType=granular
type AtomicMapTyperef map[string]string which should obviously throw an error.
This is the same scenario as described in kubernetes-sigs/structured-merge-diff#163 I believe. Sets containing atomic maps and atomic lists should be accepted, but at the moment it looks like we don't support it. I'm looking into what we'd need to change to support this. |
Discussions from yesterday:
type Container struct {
//+mapType=atomic
Field AtomicMapTyperef
}
type AtomicMapTyperef map[string]string
Based on the documentation we do not support sets with nonscalar elements. For now, there's not much of a use case to expand this support. |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-contributor-experience at kubernetes/community. |
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-contributor-experience at kubernetes/community. |
Rotten issues close after 30d of inactivity. Send feedback to sig-contributor-experience at kubernetes/community. |
@fejta-bot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
We have a bunch of cases involving the composition of atomics that we don't yet test.
We need to define and test the behavior of all of them. Creating a grid out all possible combinations might be a good first step.
Here are a few we are aware of:
map typeref is tagged with +mapType=atomic (not supported or tested)
reference to map typeref is tagged with +mapType=atomic (not tested, seems to work)
set of atomic structs (not tested, not sure if it works)
map value is atomic struct (not tested, not sure if it works)
map key is atomic struct (not tested, not sure if it works)
The text was updated successfully, but these errors were encountered: