Yes Ryan, as I figured out it had to do with different erlang versions.
Thanks for your thoughts and time.

Cheers,
--
Abhinav Singh
http://abhinavsingh.com/

On 20-Dec-2012, at 9:24 PM, Ryan Zezeski <[email protected]> wrote:

> 
> 
> 
> On Thu, Dec 20, 2012 at 9:51 AM, Abhinav Singh <[email protected]> wrote:
> 
> 
> error.log on [email protected] contains:
> 2012-12-20 16:27:37.877 [error] <0.1821.0>@mi_server:handle_info:524 
> lookup/range failure: 
> {{badfun,#Fun<riak_search_client.9.56347389>},[{mi_server,iterate,6},{mi_server,lookup,8}]}
> 2012-12-20 16:27:37.878 [error] emulator Error in process <0.4075.0> on node 
> '[email protected]' with exit value: 
> {{badfun,#Fun<riak_search_client.9.56347389>},[{mi_server,iterate,6},{mi_server,lookup,8}]}
> 
> 2012-12-20 16:27:37.878 [error] <0.1940.0>@mi_server:handle_info:524 
> lookup/range failure: 
> {{badfun,#Fun<riak_search_client.9.56347389>},[{mi_server,iterate,6},{mi_server,lookup,8}]}
> 2012-12-20 16:27:37.882 [error] emulator Error in process <0.4077.0> on node 
> '[email protected]' with exit value: 
> {{badfun,#Fun<riak_search_client.9.56347389>},[{mi_server,iterate,6},{mi_server,lookup,8}]}
> 
> This is a very specific error and is an indication that the lambda created in 
> riak_search_client cannot be instantiated after being sent over the network.  
> As I said, I have only ever seen this with mixed versions.
> 
> 
> 
> We don't really have mixed riak release. But yes we do have a mixed erlang 
> releases. Not sure if that makes any difference here.
> 
> [email protected]
> Erlang R14B04 (erts-5.8.5) [source] [64-bit] [smp:2:2] [rq:2] 
> [async-threads:0] [kernel-poll:false]
> 
> [email protected]
> Erlang R15B (erts-5.9) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] 
> [kernel-poll:false]
> 
> I bet this is it.  In order for a lambda to be reconstructed after being sent 
> over the wire very specific conditions need to be met.  My guess is either 
> the erlang version is checked explicitly or is part of the module hash, thus 
> causing this failure.  Checkout this post by Kresten Krab Thorup.
> 
> http://www.javalimit.com/2010/05/passing-funs-to-other-erlang-nodes.html
> 
> 
> 
> ~~~~~~~~~~~~
> 
> Unfortunately none of these error happens on our local dev environment.
> On my local dev box, I run a 5 node cluster (ofcourse all nodes on same 
> physical machine).
> 
> Yes, because they are all using the same erlang version.
> 
> -Z

_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to