Riak Search Issue

Alex De la rosa alex.rosa.box at gmail.com
Mon Aug 18 17:21:03 EDT 2014


Hi Eric,

You were right on naming the bucket the same as the index... it worked that
way:

bucket = client.bucket_type('futbolistas').bucket('famoso')
results = bucket.search('name_s:Lion*')
print results

{'num_found': 2, 'max_score': 1.0, 'docs': [{u'age_i': u'30', u'name_s':
u'Lionel', u'_yz_rk': u'lionel', u'_yz_rb': u'fcb', u'score':
u'1.00000000000000000000e+00', u'leader_b': u'true', u'_yz_id':
u'1*futbolistas*fcb*lionel*59', u'_yz_rt': u'futbolistas'}, {u'age_i':
u'30', u'name_s': u'Lionel', u'_yz_rk': u'lionel', u'_yz_rb': u'famoso',
u'score': u'1.00000000000000000000e+00', u'leader_b': u'true', u'_yz_id':
u'1*futbolistas*famoso*lionel*8', u'_yz_rt': u'futbolistas'}]}

Later will check to install GIT's version and see if it works with a
different bucket name.

Thanks.
Alex


On Mon, Aug 18, 2014 at 11:12 PM, Alex De la rosa <alex.rosa.box at gmail.com>
wrote:

> Hi Eric,
>
> I will try this suggestion, also I will try Luke's suggestion on using
> GIT's latest version instead of PIP to see if is something already fixed.
>
> Once done that, I will tell you guys if is really a bug or if it was fixed
> already on GIT cloning.
>
> Thanks,
> Alex
>
>
> On Mon, Aug 18, 2014 at 11:10 PM, Eric Redmond <eredmond at basho.com> wrote:
>
>> Alex,
>>
>> You may have discovered a legitimate bug in the python driver. In the
>> meantime, if you give your bucket and index the same name, you can proceed,
>> while we investigate.
>>
>> Thanks,
>> Eric
>>
>>
>> On Aug 18, 2014, at 2:00 PM, Alex De la rosa <alex.rosa.box at gmail.com>
>> wrote:
>>
>> Yes, I did it in purpose, because I did so many testings that I wanted to
>> start fresh... so I kinda translated the documentation, but that is
>> irrelevant to the case.
>>
>> Thanks,
>> Alex
>>
>>
>> On Mon, Aug 18, 2014 at 10:59 PM, Eric Redmond <eredmond at basho.com>
>> wrote:
>>
>>> Your steps seemed to have named the index "famoso".
>>>
>>> Eric
>>>
>>>
>>> On Aug 18, 2014, at 1:56 PM, Alex De la rosa <alex.rosa.box at gmail.com>
>>> wrote:
>>>
>>> Ok, I found the first error in the documentation, parameters are in
>>> reverse order:
>>>
>>> bucket = client.bucket('animals', 'cats')
>>>
>>> should be:
>>>
>>> bucket = client.bucket('cats', 'animals')
>>>
>>> Now I could save and it found the bucket type: bucket =
>>> client.bucket('fcb','futbolistas') VS bucket = client.bucket('futbolistas',
>>> 'fcb')
>>>
>>> However, even fixing that, the next step fails as it was failing before:
>>>
>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>> PYTHON:
>>>   bucket = client.bucket('fcb','futbolistas')
>>>   results = bucket.search('name_s:Lion*')
>>>   print results
>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>> Traceback (most recent call last):
>>>   File "x.py", line 13, in <module>
>>>     results = bucket.search('name_s:Lion*')
>>>   File "/usr/local/lib/python2.7/dist-packages/riak/bucket.py", line
>>> 420, in search
>>>     return self._client.fulltext_search(self.name, query, **params)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py", line
>>> 184, in wrapper
>>>     return self._with_retries(pool, thunk)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py", line
>>> 126, in _with_retries
>>>     return fn(transport)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py", line
>>> 182, in thunk
>>>     return fn(self, transport, *args, **kwargs)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/client/operations.py", line
>>> 573, in fulltext_search
>>>     return transport.search(index, query, **params)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/transport.py",
>>> line 564, in search
>>>     MSG_CODE_SEARCH_QUERY_RESP)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/connection.py",
>>> line 50, in _request
>>>     return self._recv_msg(expect)
>>>   File
>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/connection.py",
>>> line 142, in _recv_msg
>>>     raise RiakError(err.errmsg)
>>> riak.RiakError: 'No index <<"fcb">> found.'
>>>
>>> Again it says "fcb" index not found... and this time I fully followed
>>> the right documentation and didn't use "bucket.enable_search()"
>>>
>>> Thanks,
>>> Alex
>>>
>>>
>>> On Mon, Aug 18, 2014 at 10:49 PM, Alex De la rosa <
>>> alex.rosa.box at gmail.com> wrote:
>>>
>>>> Hi Eric,
>>>>
>>>> I'm sorry but I followed the documentation that you provided me and
>>>> still raises issues:
>>>>
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> STEP 1: Create Index: famoso
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> PYTHON:
>>>>   client.create_search_index('famoso')
>>>>
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> STEP 2: Create Bucket Type: futbolistas
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> SHELL:
>>>>   riak-admin bucket-type create futbolistas
>>>> '{"props":{"search_index":"famoso"}}'
>>>>   => futbolistas created
>>>>   riak-admin bucket-type activate futbolistas
>>>>   => futbolistas has been activated
>>>>
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> STEP 3: Create Bucket and Add data: fcb
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> PYTHON:
>>>>   bucket = client.bucket('futbolistas', 'fcb')
>>>>   c = bucket.new('lionel', {'name_s': 'Lionel', 'age_i': 30,
>>>> 'leader_b': True})
>>>>   c.store()
>>>>
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ERROR: This time it doesn't even let me save data into Riak
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>  Traceback (most recent call last):
>>>>   File "x.py", line 10, in <module>
>>>>     c = bucket.new('lionel', {'name_s': 'Lionel', 'age_i': 30,
>>>> 'leader_b': True})
>>>>   File "/usr/local/lib/python2.7/dist-packages/riak/bucket.py", line
>>>> 159, in new
>>>>     if self.bucket_type.datatype:
>>>>   File "/usr/local/lib/python2.7/dist-packages/riak/util.py", line 78,
>>>> in __get__
>>>>     value = self.fget(obj)
>>>>   File "/usr/local/lib/python2.7/dist-packages/riak/bucket.py", line
>>>> 618, in datatype
>>>>     return self.get_properties().get('datatype')
>>>>   File "/usr/local/lib/python2.7/dist-packages/riak/bucket.py", line
>>>> 557, in get_properties
>>>>     return self._client.get_bucket_type_props(self)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py", line
>>>> 184, in wrapper
>>>>     return self._with_retries(pool, thunk)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py", line
>>>> 126, in _with_retries
>>>>     return fn(transport)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py", line
>>>> 182, in thunk
>>>>     return fn(self, transport, *args, **kwargs)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/operations.py", line
>>>> 265, in get_bucket_type_props
>>>>     return transport.get_bucket_type_props(bucket_type)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/transport.py",
>>>> line 381, in get_bucket_type_props
>>>>     MSG_CODE_GET_BUCKET_RESP)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/connection.py",
>>>> line 50, in _request
>>>>     return self._recv_msg(expect)
>>>>   File
>>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/connection.py",
>>>> line 142, in _recv_msg
>>>>     raise RiakError(err.errmsg)
>>>> riak.RiakError: 'Invalid bucket type: <<"fcb">>'
>>>>
>>>> How to solve that? Is step by step the documentation provided.
>>>>
>>>> Thanks,
>>>> Alex
>>>>
>>>>
>>>> On Mon, Aug 18, 2014 at 10:05 PM, Eric Redmond <eredmond at basho.com>
>>>> wrote:
>>>>
>>>>> The correct way to set up and use search is in the documentation. Be
>>>>> wary of any external sources, as they may be referring to Riak Search prior
>>>>> to 2.0.
>>>>>
>>>>> http://docs.basho.com/riak/2.0.0/dev/using/search/
>>>>>
>>>>> Eric
>>>>>
>>>>>
>>>>> On Aug 18, 2014, at 12:41 PM, Alex De la rosa <alex.rosa.box at gmail.com>
>>>>> wrote:
>>>>>
>>>>> Hi Eric,
>>>>>
>>>>> I see! Understood, could you provide a little full example on how it
>>>>> should work? Because I think I also tried without it and failed.
>>>>>
>>>>> Luke told me to try using the GIT version one see if is a bug that was
>>>>> already fixed there.
>>>>>
>>>>> Thanks,
>>>>> Alex
>>>>>
>>>>> On Monday, August 18, 2014, Eric Redmond <eredmond at basho.com> wrote:
>>>>>
>>>>>> Alex,
>>>>>>
>>>>>> Don't call enable_search(). That enables *old* Riak Search (it sets
>>>>>> the property "search":true). To revert that setting, bucket.set_property("search",
>>>>>> False)
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Aug 18, 2014, at 10:55 AM, Alex De la rosa <
>>>>>> alex.rosa.box at gmail.com> wrote:
>>>>>>
>>>>>> Hi Luke,
>>>>>>
>>>>>> As an alternative version and following the Python Client
>>>>>> Documentation I tried these steps without a bucket_type (although I ended
>>>>>> in the same error):
>>>>>>
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> STEP 1: CREATE SEARCH INDEX: mywantedindex
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> PYTHON:
>>>>>>   client.create_search_index('mywantedindex')
>>>>>>
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> STEP 2: VERIFY INDEX
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> CURL:
>>>>>>   http://RIAK:8098/search/index/mywantedindex
>>>>>> <http://riak:8098/search/index/mywantedindex>
>>>>>>   => {"name":"mywantedindex","n_val":3,"schema":"_yz_default"}
>>>>>>
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> STEP 3: CREATE BUCKET: pleasework3
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> PYTHON:
>>>>>>   bucket = client.bucket('pleasework3')
>>>>>>   bucket.enable_search()
>>>>>>   bucket.set_property('search_index', 'mywantedindex')
>>>>>>
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> STEP 4: VERIFY BUCKET PROPS
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> CURL:
>>>>>>   http://RIAK:8098/riak/pleasework3
>>>>>> <http://riak:8098/riak/pleasework3>
>>>>>>    =>
>>>>>> {"props":{"allow_mult":false,"basic_quorum":false,"big_vclock":50,"chash_keyfun":{"mod":"riak_core_util","fun":"chash_std_keyfun"},"dvv_enabled":false,"dw":"quorum","last_write_wins":false,"linkfun":{"mod":"riak_kv_wm_link_walker","fun":"mapreduce_linkfun"},"n_val":3,"name":"pleasework3","notfound_ok":true,"old_vclock":86400,"postcommit":[],"pr":0,"precommit":[],"pw":0,"r":"quorum","rw":"quorum","search":true,"search_index":"mywantedindex","small_vclock":50,"w":"quorum","young_vclock":20}}
>>>>>>
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> RESULT: ERROR!
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>> PYTHON:
>>>>>>   print bucket.search('name=Felix')
>>>>>>   => riak.RiakError: 'No index <<"pleasework3">> found.'
>>>>>>
>>>>>> At least I can see the "search_index":"mywantedindex" prop set up
>>>>>> properly in the bucket but still getting the same error no matter what I
>>>>>> try; I think is possible there is a bug in the Python client?
>>>>>>
>>>>>> Thanks,
>>>>>> Alex
>>>>>>
>>>>>>
>>>>>> On Mon, Aug 18, 2014 at 6:14 PM, Alex De la rosa <
>>>>>> alex.rosa.box at gmail.com> wrote:
>>>>>>
>>>>>>> In case is of help, here are the steps I followed:
>>>>>>>
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> STEP 1: CREATE SEARCH INDEX: mywantedindex
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> PYTHON:
>>>>>>>   client.create_search_index('mywantedindex')
>>>>>>>
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> STEP 2: VERIFY INDEX
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> CURL:
>>>>>>>   http://RIAK:8098/search/index/mywantedindex
>>>>>>> <http://riak:8098/search/index/mywantedindex>
>>>>>>>   => {"name":"mywantedindex","n_val":3,"schema":"_yz_default"}
>>>>>>>
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> STEP 3: CREATE BUCKET TYPE: anothertry
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> SHELL:
>>>>>>>   riak-admin bucket-type create anothertry
>>>>>>> '{"props":{"search_index":"mywantedindex"}}'
>>>>>>>   => anothertry created
>>>>>>>   riak-admin bucket-type activate anothertry
>>>>>>>   => anothertry has been activated
>>>>>>>
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> STEP 4: CREATE BUCKET TO STORE OBJECTS: pleasework
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> PYTHON:
>>>>>>>   bucket = client.bucket_type('anothertry').bucket('pleasework')
>>>>>>>   bucket.enable_search()
>>>>>>>   bucket.set_property('search_index', 'mywantedindex')
>>>>>>>   key = bucket.new('cat-1', data={"name":"Felix","species":"Felis
>>>>>>> catus"}, content_type='application/json')
>>>>>>>    key.store()
>>>>>>>   print bucket.search('name=Felix')
>>>>>>>
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> RESULT: ERROR!
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
>>>>>>> riak.RiakError: 'No index <<"pleasework">> found.'
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Alex
>>>>>>>
>>>>>>>
>>>>>>> On Mon, Aug 18, 2014 at 5:59 PM, Alex De la rosa <
>>>>>>> alex.rosa.box at gmail.com> wrote:
>>>>>>>
>>>>>>>> Hi Luke,
>>>>>>>>
>>>>>>>> Yes, I'm using the version 2.1.0rc1 installed via PIP as explained
>>>>>>>> by Sean in another thread here.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Alex
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Aug 18, 2014 at 5:57 PM, Luke Bakken <lbakken at basho.com>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Hi Alex,
>>>>>>>>>
>>>>>>>>> I'll work on reproducing this error, thank you for the details. I'm
>>>>>>>>> assuming you're using the 2.1.0rc1 version of the Python client
>>>>>>>>> available here:
>>>>>>>>>
>>>>>>>>> https://pypi.python.org/pypi?:action=display&name=riak#downloads
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Luke Bakken
>>>>>>>>> CSE
>>>>>>>>> lbakken at basho.com
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Mon, Aug 18, 2014 at 8:47 AM, Alex De la rosa
>>>>>>>>> <alex.rosa.box at gmail.com> wrote:
>>>>>>>>> > Hi Luke,
>>>>>>>>> >
>>>>>>>>> > Same error:
>>>>>>>>> >
>>>>>>>>> > bucket = client.bucket_type('animals').bucket('cats')
>>>>>>>>> > bucket.enable_search()
>>>>>>>>> > bucket.set_property('search_index', 'famous') # NEW: Setting the
>>>>>>>>> search
>>>>>>>>> > index to the bucket
>>>>>>>>> > key = bucket.new('feliz', data={"name":"Felix","species":"Felis
>>>>>>>>> catus"},
>>>>>>>>> > content_type='application/json')
>>>>>>>>> > key.store()
>>>>>>>>> > print bucket.search('name=Felix')
>>>>>>>>> >
>>>>>>>>> > Output:
>>>>>>>>> >
>>>>>>>>> > Traceback (most recent call last):
>>>>>>>>> >   File "x.py", line 11, in <module>
>>>>>>>>> >     print bucket.search('name=Felix')
>>>>>>>>> >   File "/usr/local/lib/python2.7/dist-packages/riak/bucket.py",
>>>>>>>>> line 420, in
>>>>>>>>> > search
>>>>>>>>> >     return self._client.fulltext_search(self.name, query,
>>>>>>>>> **params)
>>>>>>>>> >   File
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py",
>>>>>>>>> > line 184, in wrapper
>>>>>>>>> >     return self._with_retries(pool, thunk)
>>>>>>>>> >   File
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py",
>>>>>>>>> > line 126, in _with_retries
>>>>>>>>> >     return fn(transport)
>>>>>>>>> >   File
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/transport.py",
>>>>>>>>> > line 182, in thunk
>>>>>>>>> >     return fn(self, transport, *args, **kwargs)
>>>>>>>>> >   File
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/client/operations.py",
>>>>>>>>> > line 573, in fulltext_search
>>>>>>>>> >     return transport.search(index, query, **params)
>>>>>>>>> >   File
>>>>>>>>> >
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/transport.py",
>>>>>>>>> > line 564, in search
>>>>>>>>> >     MSG_CODE_SEARCH_QUERY_RESP)
>>>>>>>>> >   File
>>>>>>>>> >
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/connection.py",
>>>>>>>>> > line 50, in _request
>>>>>>>>> >     return self._recv_msg(expect)
>>>>>>>>> >   File
>>>>>>>>> >
>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/riak/transports/pbc/connection.py",
>>>>>>>>> > line 142, in _recv_msg
>>>>>>>>> >     raise RiakError(err.errmsg)
>>>>>>>>> > riak.RiakError: 'No index <<"cats">> found.'
>>>>>>>>> >
>>>>>>>>> > Thanks,
>>>>>>>>> > Alex
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> > On Mon, Aug 18, 2014 at 5:00 PM, Luke Bakken <lbakken at basho.com>
>>>>>>>>> wrote:
>>>>>>>>> >>
>>>>>>>>> >> Alex -
>>>>>>>>> >>
>>>>>>>>> >> Let's take a step back and try out the "famous" index and
>>>>>>>>> "animals"
>>>>>>>>> >> bucket type, which you have confirmed are set up correctly. This
>>>>>>>>> >> (untested) code should create an object ("cat-1") in the "cats"
>>>>>>>>> bucket
>>>>>>>>> >> (within the "animals" bucket type), which will then be indexed
>>>>>>>>> by the
>>>>>>>>> >> "famous" index:
>>>>>>>>> >>
>>>>>>>>> >> bucket = client.bucket_type('animals').bucket('cats')
>>>>>>>>> >> obj = RiakObject(client, bucket, 'cat-1')
>>>>>>>>> >> obj.content_type = 'application/json'
>>>>>>>>> >> obj.data = { 'name': 'Felix', 'species': 'Felis catus' }
>>>>>>>>> >> obj.store()
>>>>>>>>> >>
>>>>>>>>> >> --
>>>>>>>>> >> Luke Bakken
>>>>>>>>> >> CSE
>>>>>>>>> >> lbakken at basho.com
>>>>>>>>> >>
>>>>>>>>> >> On Mon, Aug 18, 2014 at 7:50 AM, Alex De la rosa
>>>>>>>>> >> <alex.rosa.box at gmail.com> wrote:
>>>>>>>>> >> > Hi Luke,
>>>>>>>>> >> >
>>>>>>>>> >> > I also tried with a normal bucket "cats" using the type
>>>>>>>>> "animals" as the
>>>>>>>>> >> > documentation seemed to suggest and gave me the same error
>>>>>>>>> but this time
>>>>>>>>> >> > saying that "cats" was not found as an index... so... still
>>>>>>>>> no clue how
>>>>>>>>> >> > to
>>>>>>>>> >> > do it.
>>>>>>>>> >> >
>>>>>>>>> >> > This is an alternate code I did looking at the Python client
>>>>>>>>> API
>>>>>>>>> >> > documentation, etc...
>>>>>>>>> >> >
>>>>>>>>> >> > client.create_search_index('men')
>>>>>>>>> >> > bucket = client.bucket('accounts')
>>>>>>>>> >> > bucket.enable_search()
>>>>>>>>> >> > bucket.set_property('search_index', 'men')
>>>>>>>>> >> > key = bucket.new('alex',
>>>>>>>>> data={"username":"Alex","age":25,"sex":"male"},
>>>>>>>>> >> > content_type='application/json')
>>>>>>>>> >> > key.store()
>>>>>>>>> >> > print bucket.search('sex=male')
>>>>>>>>> >> >
>>>>>>>>> >> > Again, it says "accounts" is not an index... in this code no
>>>>>>>>> bucket
>>>>>>>>> >> > types
>>>>>>>>> >> > are used, just a plain bucket "accounts"... what is wrong?
>>>>>>>>> what is
>>>>>>>>> >> > missing
>>>>>>>>> >> > for it to work??
>>>>>>>>> >> >
>>>>>>>>> >> > This is really frustrating.
>>>>>>>>> >> >
>>>>>>>>> >> > Thanks,
>>>>>>>>> >> > Alex
>>>>>>>>> >> >
>>>>>>>>> >> >
>>>>>>>>> >> > On Mon, Aug 18, 2014 at 4:44 PM, Luke Bakken <
>>>>>>>>> lbakken at basho.com> wrote:
>>>>>>>>> >> >>
>>>>>>>>> >> >> Hi Alex -
>>>>>>>>> >> >>
>>>>>>>>> >> >> You correctly created the "famous" index, as well as
>>>>>>>>> correctly
>>>>>>>>> >> >> associated it with the bucket *type* "animals". Note that a
>>>>>>>>> bucket
>>>>>>>>> >> >> type is not the same thing as a bucket in previous versions
>>>>>>>>> of Riak. A
>>>>>>>>> >> >> bucket type is a way to give 1 or more buckets within that
>>>>>>>>> type the
>>>>>>>>> >> >> same properties. You'll have to use different code in your
>>>>>>>>> Riak client
>>>>>>>>> >> >> to use bucket types:
>>>>>>>>> >> >>
>>>>>>>>> >> >> http://docs.basho.com/riak/2.0.0/dev/advanced/bucket-types/
>>>>>>>>> >> >>
>>>>>>>>> >> >> --
>>>>>>>>> >> >> Luke Bakken
>>>>>>>>> >> >> CSE
>>>>>>>>> >> >> lbakken at basho.com
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> riak-users mailing list
>>>>>> riak-users at lists.basho.com
>>>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20140818/7bf50368/attachment.html>


More information about the riak-users mailing list