I'm trying to find the function that actually does the matching of the key with 
what is being emitted, anyone have any insight where that is?  I have the 
multiple keys coming in, that was trivial, but now I'm trying to see how in 
fact the view indexes can do multiple lookups at once.  I must admit, I'm 
operating on no more than maybe 2 days of looking at Erlang so any extra 
pointers are welcomed.



----- Original Message ----
From: Damien Katz <[EMAIL PROTECTED]>
To: [email protected]
Sent: Thursday, July 3, 2008 1:51:38 PM
Subject: Re: Views using JSON Arrays


On Jul 3, 2008, at 2:34 PM, Jan Lehnardt wrote:

>
> On Jul 3, 2008, at 20:17, Jan Lehnardt wrote:
>
>>
>> On Jul 3, 2008, at 20:07, Paul Bonser wrote:
>>
>>> On Thu, Jul 3, 2008 at 8:01 AM, Bradford Winfrey <[EMAIL PROTECTED] 
>>> > wrote:
>>>
>>>> We would get back each one of our tags as a key, yea?  Only if we  
>>>> supplied one at a time.  So how does one go about supplying a  
>>>> range, array (not sure what we'd call it here) of keys to be  
>>>> searched on?  http://...?key=["octopus","hockey";] maybe?  I'm  
>>>> unsure of the plan of attack for such a thing.  Maybe I'm just  
>>>> going about it in the wrong direction.  Any thoughts?
>>>
>>> Hey everyone. I've pretty much just been watching the mailing list  
>>> here myself.
>>>
>>> This is the second time somebody has asked about this since I've
>>> started watching this mailing list. I could see it being a valuable
>>> feature.
>>>
>>> Would it be valuable to add the ability to query a view with  
>>> multiple
>>> keys, getting the results for each of those keys back? Something  
>>> like
>>> http://...?key_list=["octopus","hockey";]
>>>
>>> If I were interested in investigating how hard it would be to add  
>>> that
>>> feature, where would I start looking in the code?
>>
>> This simply doesn't fit the way views work. They are single indexes  
>> that you
>> can use for single-key or or key-range lookups. if you need random  
>> access
>> you'd basically need to query the view as many times as you have keys
>> to search. No matter if you do that in front or behind the API.
>
> Hey you smart-ass, on the one hand you are trying to recruit new
> developers and on the other hand you discourage people from adding
> useful features. Make up your mind man!
>
> Paul, if you come up with a nice solution, we'd be happy to look at
> integrating it. Please give it a try. To investigate the code it is  
> probably
> best to start at src/couchdb/couch_http.erl as it defines the HTTP API
> and handles the requests you already know and just drill down from
> there.

:)

The view indexes can indeed do multiple lookups at once. The only  
thing is I don't think a GET with all the keys are URL args is the way  
to go as it can get really long and cause problems with proxies and  
HTTP libs, a POST with the lookup keys as the body is probably better.


>
>
> Cheers
> Jan
> --


      

Reply via email to