-
Notifications
You must be signed in to change notification settings - Fork 107
New user metadata namespace for Overview page #2826
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
Conversation
webbnh
left a comment
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 feel like this is a considerable departure from the previous vision of how the metadata namespaces would be used. The old model seemed pretty solid and comprehensive...whereas this seems like the new keys don't fit well and the change seems to remove support for third-party clients...am I misunderstanding this change?
dbutenhof
left a comment
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.
Apparently I need to do some more noodling here. (Sigh.)
PBENCH-445 I've been talking about this a long time; after pushing PR distributed-system-analysis#2826 which will require rebuilding the DB, I figured I might as well try to take this additional step at the same time. There are a lot of changed files; most of the changes (including the legacy test gold files) are small and straightforward.
npalaska
left a comment
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 have one question
webbnh
left a comment
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.
My brain is filling up, so I'm going to go ahead and post this now.
If I hit any issues with the tests, I'll post a follow-up.
webbnh
left a comment
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 found a few more things that you might want to consider (but, I also may have cast my net too wide...).
PBENCH-645 This change repurposes the "user.*" Dataset Metadata namespace as a per-user key space, where each authenticated client with READ access to a given dataset will be able to write independent metadata attached to that dataset. (Only the owner has UPDATE access to change the "global" metadata keys in the "dashboard.*" namespace.) At the Metadata internal class level, methods now allow specifying a User to associate each item of metadata. At the API level, the user is always the authenticated user (or None for only global metadata). (An unauthenticated client can ask for `user.*` keys, but the value will always be None as authenticated clients will never create global values for the `user.*` namespace and unauthenticated clients can't ever set metadata values.
PBENCH-445 I've been talking about this a long time; after pushing PR distributed-system-analysis#2826 which will require rebuilding the DB, I figured I might as well try to take this additional step at the same time. There are a lot of changed files; most of the changes (including the legacy test gold files) are small and straightforward.
webbnh
left a comment
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.
👍
PBENCH-445 I've been talking about this a long time; after pushing PR distributed-system-analysis#2826 which will require rebuilding the DB, I figured I might as well try to take this additional step at the same time. There are a lot of changed files; most of the changes (including the legacy test gold files) are small and straightforward.
PBENCH-445 I've been talking about this a long time; after pushing PR #2826 which will require rebuilding the DB, I figured I might as well try to take this additional step at the same time. There are a lot of changed files; most of the changes (including the legacy test gold files) are small and straightforward.
PBENCH-645
This change re-purposes the
user.*Dataset Metadata namespace as a per-user key space, where each authenticated client with READ access to a given dataset will be able to write independent metadata attached to that dataset. (Only the owner has UPDATE access to change the "global" metadata keys in the "dashboard.*" namespace.)At the Metadata internal class level, methods now allow specifying a
Userto associate each item of metadata. At the API level, the user is always the authenticated user (or None for only global metadata).An unauthenticated client can ask for
user.*keys, but the value will always be None as authenticated clients will never create global values for theuser.*namespace and unauthenticated clients can't ever set metadata values.