yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #93526
[Bug 2009724] Re: Incorrect URL when browsing Swift containers
Reviewed: https://review.opendev.org/c/openstack/horizon/+/886891
Committed: https://opendev.org/openstack/horizon/commit/4aa347fe196b7b18ff0bf5f4d4f076a6c14cf12e
Submitter: "Zuul (22348)"
Branch: master
commit 4aa347fe196b7b18ff0bf5f4d4f076a6c14cf12e
Author: jeremy-boyle <jeremyboylet@xxxxxxxxx>
Date: Sat Jun 24 16:59:11 2023 +0000
Fixing Incorrect URL when browsing Swift containers
This patch fixes a bug identified in the code that generates the URL for
the Swift container object. The bug caused the forward slashes (/) in the
folder parameter to be encoded as %2F instead of being included as '/' in the
resulting URL.
To resolve this issue, the code has been updated by adding a replace() method
to replace the %2F sequences with forward slashes. The updated code ensures
that the URL generated for the folder parameter contains the correct forward
slash (/) representation.
Closes-Bug: #2009724
Signed-off-by: jeremy-boyle <jeremyboylet@xxxxxxxxx>
Change-Id: I5837e74ddcc71cda6b4686e586dbb8b1386a9cd3
** Changed in: horizon
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/2009724
Title:
Incorrect URL when browsing Swift containers
Status in OpenStack Dashboard (Horizon):
Fix Released
Bug description:
When browsing through OpenStack Swift containers, sometimes Horizon
will incorrectly encode part of the URL/URI of an object, and thus
navigate to the wrong page. This has been reproducible for me by
placing an object in a container more than about 3 pseudo-folders
deep. For example, the structure might look like:
(Container) --> folder1 --> folder2 --> folder3
Upon clicking on folder3 in the Container browser window in Horizon,
the site will try to navigate to
"containers/container/containername/testfolder1%2Ftestfolder2/testfolder3"
rather than the expected
"containers/container/containername/testfolder1/testfolder2/testfolder3".
It appears that at some stage in the process, the path gets HTTP URL
Encoded (encodeURIComponent) too many times. Note that the unexpected
character "%2F" is the encoding of "/".
This is also evident by snooping on the GET request Horizon makes to
the OpenStack Swift backend (see attached screenshot); the delimiter
is set as "%2F", but the path requested has a "%252F" (this is just
the double encoding of "%2F" since the encoding of "%" is "%25").
I'm guessing that there might be some recursive logic somewhere that
results in the end-string being encoded multiple times.
To manage notifications about this bug go to:
https://bugs.launchpad.net/horizon/+bug/2009724/+subscriptions
References