basho/riak-python-client — Issue #75: special characters in links are not unescaped when using http transport
Author: gburd
Created: 2011-10-16 14:29:22+00:00
State: open

to_link_header properly uses urllib to escape HTTP's special characters using their percent-equivalent (https://github.com/basho/riak-python-client/blob/master/riak/transports/http.py#L310) however it does not decode links in parse_links (https://github.com/basho/riak-python-client/blob/master/riak/transports/http.py#L331). If a link is stored ("%" -> "%25"), read ("%25"), then stored again ("%25" -> "%2525") the link will become corrupted and fail when used in later processing. This will also cause links to continue to grow in length until they exceed the 8192 - 8 max length which may lead to other problems as well.