Oops.  Forgot to reply all.

Dan suggested I try keep: true in the reduce phase, but it turns out that
didn't make a difference.  Can anyone else spot a hole in my query below?
 Are there logs I can look at to debug errors in the reduce phase?

Hi Dan,

Here's the query as I have it for debug purposes, including the wonky reduce
phase.  I might add that this query works on my local machine (Mac OS, Riak
0.9.1, not Innostore).  The remote machine is Ubuntu 9.10, Amazon EC2
32-bit, Innostore, Riak 0.9.1.

I'm generating the query in Ruby. Also, beware.. I'm a n00b. If this code is
making obvious idiomatic errors, I'd be happy to receive your suggestions.

Thanks,

Jimmy

        query = {
          'inputs' => 'events',
          'query' => [
            {'map' => { # go get annotations
              'language' => 'javascript',
              'source' => <<-END
                function(v) {
                  var d = Riak.mapValuesJson(v)[0]
                  if (d.type == "checkin" && (#{guard_expression}))
                    return [[v.bucket, v.key], [v.key + ',annotation',
'spend']]
                  else
                    return []
                }
              END
              }},
            {'map' => {
              'language' => 'javascript',
              'source' => # verify the annotations exist
                'function(v) {
                  if ("values" in v && "bucket" in v)
                    return [[v.bucket, v.key]]
                  else
                    return []
                }'}},
            {'map' => { # prep for reduce phase
              'language' => 'javascript',
              'source' =>
                'function(v,k,a) {
                  return [v]
                }'}},
            {'reduce' => { # does the reduce phase work?
              'language' => 'javascript',
              'source' =>
                'function(v, a) {
                  return v
                }'}},
           ]}

On Thu, Apr 29, 2010 at 9:18 PM, Dan Reverri <reve...@gmail.com> wrote:

> What's the map phase function?
>
> On Thu, Apr 29, 2010 at 6:14 PM, Jimmy Thrasher <ji...@groopd.com> wrote:
>
>> Hi everyone.  Hope you're doing well.  Tried this on the IRC channel, but
>> I guess it was dinner time.  :)
>>
>> I have a query which, up until today, has worked quite well.  The data
>> currently coming out of the map phases are all correct looking, but the
>> minute I start a reduce, I get [] as the result.
>>
>> Currently, for debug, my only reduce function looks like this:
>> function(values) {
>>     return values
>> }
>>
>> If I remove all the reduce phases, I get, say, 2 items out of the query.
>>  But if I put that reduce function in, I get only [].
>>
>> Is this something anyone has seen before?  How should I go about debugging
>> it?
>>
>> Thanks for any direction you can give.
>>
>> Jimmy
>>
>>
>> _______________________________________________
>> 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