-
Notifications
You must be signed in to change notification settings - Fork 5
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
Add possibility to tag objects. #426
Conversation
0f481c2
to
8ef5f46
Compare
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.
The openApi spec supports tuples in 3.1 with prefixItems. We may want to change the api docs when that comes into use.
Add an issue to keep track of this.
It does only one request to fetch metadata for all objects in a bucket.
How does this perform with a lot of objects ?
We sometimes use container
sometimes bucket
in the API specs. We should be a bit more consistent.
Other than that LGTM
parameters: | ||
- name: container | ||
in: query | ||
description: The container which metadata will be updated. | ||
description: The container which contains the objects to be updated. |
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.
description: The container which contains the objects to be updated. | |
description: The container which consists of the objects to be updated. |
@sampsapenna had offered to stress test with lots of objects and containers. Could you check it out, please? I would expect that it takes a few seconds to load the tags, similar to how it takes a few seconds to load the object table. Created a couple of issues: |
Did some stress testing – we'll have to change the existing implementation of objects in query string if we want to fetch the whole container with one request. Depending on the object names it smashes through the URL size caps even with as few as 200 containers. Alternatively splitting the requests up is also an option. The performance is good until it runs into the URL issues. After the change takes place I can test it with a couple worst case scenarios. 8192 bytes is apparently the default limit for |
Unfortunately the Openstack API specification caps the object name to 1024 characters, so that means we can't reliably put even two objects into one request if we want to stay under the 2048 mark. Chrome is fine with 32KiB of content in the address, Firefox can deal with even more – so from the browser side we can go with higher assumptions without an issue. I'd guess that the |
Thanks for testing, @sampsapenna. I did think this might be an issue. The most natural for me here would be to move |
5a30e46
to
ba97c70
Compare
8f7e098
to
58435db
Compare
58435db
to
30dd43a
Compare
Noticed a few issues while implementing the filtering. Edit button was showing in the folder list, folder with tag, object tags not properly deleting all the tags, leaving a tag with empty value because of inconsistency in the swift backend. Hopefully all issues are gone now. |
This looks like the same feature #85. |
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.
we need to display a message, in a different PR, that a title is not editable at the moment.
This is a continuation to the tagging buckets feature from PR #419. The openApi spec supports tuples in 3.1 with prefixItems. We may want to change the api docs when that comes into use.
30dd43a
to
96b2a89
Compare
i think commit |
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.
Tagging functionality works nicely, and does not prevent UI usage. Would be nice to be able to cancel the tag fetch when changing routes, to prevent performance issues with the filled event loop. Not sure how easily this would be implemented, though.
I will investigate. |
Description
This is a continuation to the tagging buckets feature from PR #419. The implementation is very similar.
The openApi spec supports tuples in 3.1 with
prefixItems
. We may want to change the api docs when that comes into use.It does only one request to fetch metadata for all objects in a bucket.
NB: Please, check the Finnish language :)
Related issues
Is #5 solved with this?
Type of change
Changes Made
Added backend for updating metadata for an object. Added UI for displaying tags for objects, as well as hiding them. There is a new button, called 'Edit', which makes it possible to edit an object's tags.
Previously, the api docs for container update metadata had gone to the wrong place. The fix is in this PR :)
Testing
Mentions