On Tue, Oct 25, 2011 at 10:35 AM, Jim Adler <jim.ad...@comcast.net> wrote:
> Hi Bryan - I'm now running 1.0.1 but the keys were inserted under 0.14.  I
> tried your test and it worked fine.  So, maybe I'm caught between
> inserting under an old version and now reading under another?

It's possible that your upgraded nodes are operating in compatibility
mode wrt. key decoding, rather than using the 1.0 default behavior.
Look in the riak_kv section of your app.config for the line:

     {http_url_encoding, on},

If that's missing or set to 'compat' instead of 'on', then asking for
"foo%0Abar" over HTTP will attempt to look up "foo%0Abar", not
"foo\nbar".  There are two ways to access this key in 1.0, one
request-level the other global.

The request-level path is to use the X-Riak-URL-Encoding header:

    curl -H "X-Riak-URL-Encoding:on" http://.../foo%0Abar

That will enable the 1.0 decoding behavior for just that request.

The global path is to alter the aforementioned setting in your
app.config and bounce the node.  Note that if you had any keys with
percent signs or other invalid URL characters in them, though, you'll
now have to encode those keys when requesting them (this is the reason
for leaving upgraded nodes in 'compat' mode by default).

-Bryan

_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to