On Thu, Nov 24, 2011 at 09:52:36PM -0800, Tom wrote: > > About the rate... this is kinda outdated now - we updated ruote with > the fix you did to the participant list and the rate seemed to have > dropped significantly... it might now be 1 out of 200 or so... just > FYI, we got a really simple workitem in that gets rewinded every 20 > seconds and touches a file (which works as a performance check for > ruote for us), and it seems to get 'stuck' every 3-4 hours or so (with > the error mentioned above). > I'm not sure if I can answer your second question, but given that we > restart the workers on every deploy, I assume the # of workers (and > the order they're started in) doesn't really matter... > And no, all participants are registered before we start the workers...
OK, I ran this small script on my Mac (snoleo) with redis-2.2.2 (compiled manually) and couldn't get it to score nils (redis and client on the same host). How does it score in your environment ? (https://gist.github.com/1392979) ---8<--- $:.unshift('../ruote/lib') $:.unshift('../ruote-redis/lib') require 'rufus-json/automatic' require 'redis' require 'ruote' require 'ruote-redis' storage = Ruote::Redis::Storage.new('db' => 15, 'thread_safe' => true) storage.put( # pp output {"type"=>"configurations", "_id"=>"participant_list", "list"=> [["^.+$", ["Ruote::BlockParticipant", {"on_workitem"=> "proc do |workitem|\n context.tracer << workitem.participant_name + \"\\n\"\n end"}]]]}) count = 0 n = 100_000 t = Time.now n.times do |i| list = storage.get_configuration('participant_list') count = count + 1 if list == nil end puts "#{count} in #{n} is nil" puts "took #{Time.now - t} seconds" --->8--- It seems your deployment has nil coming instead of the participant list from time to time (around here https://github.com/jmettraux/ruote/blob/master/lib/ruote/svc/participant_list.rb#L316-324). We could harden that (or ruote-redis), but I find it puzzling the issue doesn't manifest itself when getting expressions (it would lead to all sorts of quirks). I wonder what the script will say in your environment. Cheers, -- John Mettraux - http://lambda.io/processi -- you received this message because you are subscribed to the "ruote users" group. to post : send email to [email protected] to unsubscribe : send email to [email protected] more options : http://groups.google.com/group/openwferu-users?hl=en
