-
-
Notifications
You must be signed in to change notification settings - Fork 16
Labels
Description
Affected version
sble-operator 0.76.0
Current and expected behavior
If you try to merge the following KVP sets:
a: b
b: a
---
a: a
b: b
and then build a k8s_openapi label map from it you get
a: b
b: b
Which is nonsense, I'd expect one of them to take precedence (and according to convention/ObjectMetaBuilder::with_label docs) it should be the latter ({a: a, b: b}).
Possible solution
Ultimately, this comes down to that we try to store reified KeyValuePairs in a BTreeSet. This isn't what sets exist for.
As a "quick fix" we could change the backing store for KeyValuePairs to BTreeMap<Key, V> (though its Deref<BTreeSet> impl makes that problematic too, on top of a bunch of lifetime issues). Ultimately I'd like to rip the band-aid and just kill KeyValuePair.
Additional context
No response
Environment
No response
Would you like to work on fixing this bug?
yes
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Done