Dear Shuhao Wu, 

Thanks so much, that was the key to the solution! 

rel/riak/bin/search-cmd install ramtest
:: Installing Riak Search <--> KV hook on bucket 'ramtest'.

I also needed to exclude all key/data from the bucket and reinsert them 
again to make use of the pre-commit hook feature. Once done, the search 
started working. 

Happy, 

Regards, 
Claude 



Claude Falbriard 
Certified IT Specialist L2 - Middleware
AMS Hortolândia / SP - Brazil
phone:    +55 19 9837 0789
cell:         +55 13 8117 3316
e-mail:    clau...@br.ibm.com




From:   Shuhao Wu <ad...@thekks.net>
To:     clau...@br.ibm.com
Cc:     riak-users@lists.basho.com
Date:   23/05/2012 15:24
Subject:        Re: Riak / Search via Python Client, no Results from 
Server



Yes. You have to do search-cmd install bucketname I believe 
Shuhao
On May 23, 2012 11:20 AM, <clau...@br.ibm.com> wrote:
Thanks Sean for the hint .. sure, you right, that wildcard syntax was too 
short !   

Still like this, the main issue remains. The search function is not yet 
activated at the server side, even having the parameter set  to true in 
the /etc/app.config file.    Whatever  syntax sent to the server is not 
checked, nor validated, nor executed.  I've restarted the server with 
bin/riak stop and bin/riak start .   

The same error also shows up at the sample bucket  'user' throwing 0 
results (with no error message).  I'm using the git version built from 
source. 
  
at rel/riak/etc/app.config 
%% Riak Search Config 
 {riak_search, [ 
                %% To enable Search functionality set this 'true'. 
                {enabled, true} 
               ]},

Any further settings required to activate the server-side search function? 


Log 
C:\Python\myprojects\riak>python basic_search.py 
starts at : 2012-05-23 12:12:31.718000 
How many keys in the bucket: 500 
Resultset: [] 

Source: 
search_string = 'cEDO:[aaaa TO ZZZZ]' 
bucketname = 'ramtest' 
startd = datetime.now() 
print "starts at : " + str(startd) 
start = time() 
# 
try: 
    client = riak.RiakClient(host='zbra') 
    data_bucket = client.bucket(bucketname) 
    mykeys = data_bucket.get_keys() 
    howmany = len(mykeys) 
    print "How many keys in the bucket: "+ str(howmany)   
    resultset = client.search(bucketname, 
search_string).map('Riak.mapValuesJson').run() 
    print "Resultset: " + str(resultset) 


Regards, 
Claude 


Claude Falbriard 
Certified IT Specialist L2 - Middleware
AMS Hortolândia / SP - Brazil
phone:    +55 19 9837 0789
cell:         +55 13 8117 3316
e-mail:    clau...@br.ibm.com




From:        Sean Cribbs <s...@basho.com> 
To:        clau...@br.ibm.com 
Cc:        riak-users@lists.basho.com 
Date:        22/05/2012 17:52 
Subject:        Re: Riak / Search via Python Client, no Results from 
Server 



Claude, 

Generally your terms in wildcard queries need to be at least two or three 
characters (I don't remember which), so either way A* is not going to work 
as a search. 

On Tue, May 22, 2012 at 4:46 PM, <clau...@br.ibm.com> wrote: 
Dear colleagues. 

Not able to run a pattern search through the Python query. The server 
search option was enabled with the true setting in the app.config file 
(line 165) and the server was restarted.   Checking the Riak console log 
below,  I see the search being started, but no results are returned to the 
client. My version is "git" built from source.   

Console Log 
2012-05-22 15:07:50.853 [info] <0.7.0> Application riak_search started on 
node 'riak@172.24.200.158' 
2012-05-22 15:07:50.854 [info] <0.7.0> Application basho_stats started on 
node 'riak@172.24.200.158' 
2012-05-22 15:07:50.865 [info] <0.7.0> Application runtime_tools started 
on node 'riak@172.24.200.158' 
2012-05-22 15:07:50.866 [info] <0.7.0> Application public_key started on 
node 'riak@172.24.200.158' 
2012-05-22 15:07:50.882 [info] <0.7.0> Application ssl started on node '
riak@172.24.200.158' 
2012-05-22 15:07:50.944 [info] 
<0.1558.0>@riak_core:wait_for_application:390 Wait complete for 
application riak_search (0 seconds) 
2012-05-22 15:07:51.034 [info] <0.1490.0>@riak_core:wait_for_service:410 
Wait complete for service riak_search (0 seconds) 

Source code:  Read all data starting with Capital Letter A, cEDO is the 
data field name 
try: 
    client = riak.RiakClient(host='xxxxxxxx') 
    data_bucket = client.bucket(bucketname) 
    mykeys = data_bucket.get_keys() 
    howmany = len(mykeys) 
    print "How many keys in the bucket: "+ str(howmany)     
    search_query = client.search(bucketname, 'cEDO:A*') 
    print "search query built" 
    resultset = search_query.run() 
    print "result entries found: " + str(len(resultset)) 

Processing log: 
How many keys in the bucket: 500 
search query built 
result entries found: 0 

No further error message is thrown. 

ps .. Also the basic sample from the Python client documentation (bucket= 
'user') shows the same results, 0 entries found by the serach.   
         
http://basho.github.com/riak-python-client/tutorial.html#using-search 

Thanks in advance for your insights. What's missing to start the  Search 
feature, or is something missing in the Lucene syntax ? 

Regards, 
Claude 


Claude Falbriard 
Certified IT Specialist L2 - Middleware
AMS Hortolândia / SP - Brazil
phone:    +55 19 9837 0789
cell:         +55 13 8117 3316
e-mail:    clau...@br.ibm.com

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




-- 
Sean Cribbs <s...@basho.com> 
Software Engineer 
Basho Technologies, Inc. 
http://basho.com/ 


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

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

Reply via email to