You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since many uses of the Storage interface may have hierarchical keys, e.g. the permissions, it would be beneficial to have a way to iterate over keys matching a given prefix.
Since we are iterating over all keys the bot knows we should expect that also non-permission keys are among them.
I suggest you update your unit test to check this is also handled correctly.
Rather than push this onto any developer who needs to interact with the permissions, we could require the Storage interface to support prefix scans. Some storage engines may have a higher performance way of doing prefix scans and we could take advantage of that. If the storage engine does not offer it, the bot could handle the naive looping over keys itself. This removes the burden from developers to implement/test this independently.
Potential Issues
If the prefix scan isn't optional for the Storage interface, a new release would break any third party implementations. As described above, this would not be an issue.
The text was updated successfully, but these errors were encountered:
Yes, I think this addition is a good new feature. You still want to submit a PR for this @dwmunster ? I have more time to work on features and review PRs in the next two weeks. Let me know if you don't have the time right now so I will give it a shot :)
Sorry for taking a while to respond @fgrosse, I've gotten quite busy these past couple weeks. I should have time to put something together this weekend if you'd like. If you'd like it done before then, have at.
Summary
Since many uses of the
Storage
interface may have hierarchical keys, e.g. the permissions, it would be beneficial to have a way to iterate over keys matching a given prefix.Basic example
Motivation
From #28
Rather than push this onto any developer who needs to interact with the permissions, we could require the
Storage
interface to support prefix scans. Some storage engines may have a higher performance way of doing prefix scans and we could take advantage of that. If the storage engine does not offer it, the bot could handle the naive looping over keys itself. This removes the burden from developers to implement/test this independently.Potential Issues
Storage
interface, a new release would break any third party implementations. As described above, this would not be an issue.The text was updated successfully, but these errors were encountered: