On Wed, Feb 1, 2012 at 11:43 AM, Matthew A. Brown <mat.a.br...@gmail.com> wrote: > Thanks much for the info. We're running Riak 1.0.3. I think in our > case what would've made this easier to track down would have been not > having the error output cut off in the log -- since the inputs to the > reduce comprised a pretty large set, the output cut off before the > call trace, which appears after the dump of the inputs. It was pretty > easy to track down once I narrowed down the inputs to a manageable > size that still reproduced the error.
Agreed - it's so hard to know how much context is useful, and how much is too much. However, I think you'll find that the upcoming Riak 1.1 release already does much better in this situation. I just created a small sample to reproduce what you found, where I have a reduce function that calls bryan:does_not_exist/0, which is undefined. In 1.0.3, as you reported, you see no indication of error in the return value, and useless spew on the error console like: 13:26:43.720 [error] error:undef done(): [...so many inputs that the stack trace is omitted... In the upcoming 1.1 release, using the HTTP interface at /mapred, you receive a JSON object like: {"phase":0, "error":"{undef,[{bryan,does_not_exist,[]},{riak_kv_w_reduce,reduce,3},{riak_kv_w_reduce,done,1},{riak_pipe_vnode_worker,wait_for_input,2},{gen_fsm,handle_msg,7},{proc_lib,init_p_do_apply,3}]}" "inputs":...} As well as a much more informational message on the error console: 13:27:48.143 [error] gen_fsm <0.1484.0> in state wait_for_input terminated with reason: call to undefined function bryan:does_not_exist/0 from riak_kv_w_reduce:reduce/3 Hope this helps, Bryan _______________________________________________ riak-users mailing list riak-users@lists.basho.com http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com