Trouble with Riak Search JSON Extractor

Matt Brooks mtbrooks33 at
Mon Mar 23 12:07:11 EDT 2015


Is there a way to reload the index manually? I tried running
"rp(yz_index:reload(<<"index_name">>))." on each node as suggested on a
GitHub issue, and though I got an "ok" response back listing each nodes in
the cluster, I still could not query using the updated schema. I even
deleted all of my K/V pairs and re-added them with changed keys.

Thank you,

On Sun, Mar 22, 2015 at 10:21 PM Matt Brooks <mtbrooks33 at> wrote:

> I see. I'll be looking forward to the future release! Thank you, Zeeshan.
> Matt.
> On Sun, Mar 22, 2015 at 9:57 PM Zeeshan Lakhani <zlakhani at>
> wrote:
>> Hey Matt,
>> Thanks for clarifying the situation. Yes, I’m working on auto-reloading
>> and re-syncing data along with changes to schemas; it’ll be in a future
>> release. Currently, you can add fields to the schema, for example, for new
>> sets of data, and reload the index if you `riak attach` into one of the
>> running nodes and reload the index across the cluster (based on
>>, e.g.
>> Zeeshan Lakhani
>> programmer |
>> software engineer at @basho |
>> org. member/founder of @papers_we_love |
>> twitter => @zeeshanlakhani
>> On Mar 22, 2015, at 9:37 PM, Matt Brooks <mtbrooks33 at> wrote:
>> Just discovered this on GitHub
>> basho/yokozuna/issues/130. Looks like auto-reloading is a work in
>> progress.
>> On Sun, Mar 22, 2015 at 9:24 PM Matt Brooks <mtbrooks33 at> wrote:
>>> Not getting any errors... but I did notice something interesting after
>>> deleting the nodes on my system and then reconfiguring them.
>>> If the first time I set up a schema I add the multivalued field in
>>> question, everything works. If I then change the schema and then update it
>>> over HTTP, the changes do not take affect.
>>> For example, when I reconfigured the nodes on my system I added kept the
>>> multivalued "groups" field I mentioned above. I then added some users and
>>> was able to successfully retrieve them using q=groups:* or something more
>>> specific. I then changed the schema from "groups" to "" and
>>> PUT it on the server successfully (a subsequent GET returned the new
>>> schema). I also updated the users so that the "groups" array was changed to
>>> an array of JSON objects, each with an "id" field that would match the "
>>>" field in the schema. I then tried to query the users using
>>>*. This failed.
>>> Do changed to the schema not cause the solr indexes to update?
>>> PS: I dug around in $RIAK/data/yz/user/conf and noticed a user.xml file.
>>> The file held the ORIGINAL schema, not the updated one.
>>> On Sun, Mar 22, 2015 at 6:45 PM Zeeshan Lakhani <zlakhani at>
>>> wrote:
>>>> Hello Matt,
>>>> Are you receiving any indexing errors in your logs (check the Solr logs
>>>> as well)? To be sure, I just wrote a test (using our erlang pb api,
>>>> d0015658ff90b94cb1a00329ffafe00R251) using a custom schema, and I
>>>> didn’t run into any troubles; I also checked via the http api. If you have
>>>> the required _yz* fields, you should get those back with the document. If
>>>> you want the groups items themselves, you’d have to make `stored` true.
>>>> Zeeshan Lakhani
>>>> programmer |
>>>> software engineer at @basho |
>>>> org. member/founder of @papers_we_love |
>>>> twitter => @zeeshanlakhani
>>>> On Mar 22, 2015, at 4:13 PM, Matt Brooks <mtbrooks33 at> wrote:
>>>> Hello,
>>>> I have a quick question about a search schema that would index an array
>>>> of strings in a JSON object. I am storing user data in JSON that looks
>>>> something like this:
>>>> {
>>>>    "name" : "John Smith",
>>>>    "email" : "jsmith at",
>>>>    "groups" : [
>>>>       "3304cf79",
>>>>       "abe155cf"
>>>>    ]}
>>>> The custom schema I use for users includes this field entry:
>>>> <field name="groups" type="string" indexed="true" stored="false" multiValued="true"/>
>>>> I also have the following field type entry:
>>>> <fieldType name="string" class="solr.StrField" sortMissingLast="true"/>
>>>> I assumed that these entries would allow me to search for users using a
>>>> query like:
>>>> curl $RIAK/search/query/user?wt=json&q=groups:3304cf79
>>>> But no docs are returned. I'm almost certain I have an issue with my
>>>> schema. How can I query users by string entries in the "groups" array?
>>>> Thank you,
>>>> Matt.
>>>> _______________________________________________
>>>> riak-users mailing list
>>>> riak-users at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the riak-users mailing list