Skip to content
This repository has been archived by the owner on Oct 15, 2024. It is now read-only.

COW metadata / no metadata on metakeys #3610

Closed
kodebach opened this issue Dec 24, 2020 · 9 comments
Closed

COW metadata / no metadata on metakeys #3610

kodebach opened this issue Dec 24, 2020 · 9 comments

Comments

@kodebach
Copy link
Member

kodebach commented Dec 24, 2020

Because metadata on meta keys is not allowed we can use Copy-On-Write semantics for metadata. Therefore all keys of the namespace KEY_NS_META should automatically have the flags KEY_FLAG_RO_NAME, KEY_FLAG_RO_VALUE and KEY_FLAG_RO_META set during keyVNew.

This ensures that keySetMeta will fail. It also avoids any problems with ksDeepDup (#3609), since the need for deep-copies of metadata is removed. Therefore keyDup (#3606) can just create a shallow-copy of the metadata without any further implications.

Additionally, KEY_NS_META keys should at all times fulfill key->meta == NULL and keyMeta() should return NULL instead of allocating a new KeySet.

@markus2330
Copy link
Contributor

Thank you for reporting the problem! Actually the metakeys should be completely read-only, see #3609

@kodebach kodebach changed the title metadata on metakeys COW metadata Dec 27, 2020
@kodebach kodebach changed the title COW metadata COW metadata / metadata on metakes Dec 27, 2020
@kodebach kodebach changed the title COW metadata / metadata on metakes COW metadata / metadata on metakeys Dec 27, 2020
@kodebach kodebach changed the title COW metadata / metadata on metakeys COW metadata / no metadata on metakeys Dec 27, 2020
@kodebach
Copy link
Member Author

I updated the issue

@stale
Copy link

stale bot commented Dec 31, 2021

I mark this issue stale as it did not have any activity for one year. I'll close it in two weeks if no further activity occurs. If you want it to be alive again, ping the issue by writing a message here or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@stale stale bot added the stale label Dec 31, 2021
@kodebach
Copy link
Member Author

@markus2330 This should probably be implemented together with the removal of keyGetMeta/keySetMeta.

@github-actions
Copy link

github-actions bot commented Jan 1, 2023

I mark this stale as it did not have any activity for one year. I'll close it in two weeks if no further activity occurs. If you want it to be alive again, ping by writing a message here or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@github-actions github-actions bot added the stale label Jan 1, 2023
@github-actions
Copy link

I closed this now because it has been inactive for more than one year. If I closed it by mistake, please do not hesitate to reopen it or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jan 16, 2023
@kodebach kodebach reopened this Jan 16, 2023
@kodebach
Copy link
Member Author

See #4744

@github-actions github-actions bot removed the stale label Jan 17, 2023
Copy link

I mark this stale as it did not have any activity for one year. I'll close it in two weeks if no further activity occurs. If you want it to be alive again, ping by writing a message here or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@github-actions github-actions bot added the stale label Jan 31, 2024
Copy link

I closed this now because it has been inactive for more than one year. If I closed it by mistake, please do not hesitate to reopen it or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Feb 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants