All, Just joined, so can''t reply to earlier thread regarding the problem with packet on leopard. Here is some data detailing the situation on my machine. I have only one worker defined (in addition to the default log_worker). If I manually "script/backgroundrb start" from my rails root, everything works fine. However, I''m trying to bring this to a production level, using god. If I manually start god with "god -c /path/to/config/background.god" then god will start backgroundrb if it isn''t currently running, and everything works fine. The problem occurs when I use launchd to automatically start god on reboot. When that happens, backgroundrb starts, but I get the following error in backgroundrb_debug_11006.log: ------------------------------------------- /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:116:in `exec'': No such file or directory - packet_worker_runner 8:7:log_worker:17:/Users/jmillr/rails/ mchanntesting/lib/workers:/Users/jmillr/rails/mchanntesting/script/ load_worker_env (Errno::ENOENT) from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:116:in `fork_and_load'' from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:80:in `start_worker'' from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ server/lib/master_proxy.rb:16:in `initialize'' from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:19:in `run'' from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ server/lib/master_proxy.rb:14:in `initialize'' from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46:in `new'' from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46 /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:116:in `exec'': No such file or directory - packet_worker_runner 11:10:symbol_data_worker:4:/Users/jmillr/rails/ mchanntesting/lib/workers:/Users/jmillr/rails/mchanntesting/script/ load_worker_env (Errno::ENOENT) from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:116:in `fork_and_load'' from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:68:in `load_workers'' from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:63:in `each'' from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:63:in `load_workers'' from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ packet_master.rb:20:in `run'' from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ server/lib/master_proxy.rb:14:in `initialize'' from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46:in `new'' from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46 Client disconected ------------------------------------------- Neither worker is found. Let me repeat: It all works fine when I manually start background.rb or manually start god which then starts backgroundrb. The problem only occurs when I use launchd to start god. (And, by the way, the problem is the same if I use launchd to autostart backgroundrb; this was before I tried god.) The problem appears to be in packet (on MacOS X 10.5). I can send any of the launch plist, god config, or worker files, but as I''ve said, it works great if I invoke the system manually. If anyone has any suggestions, I''d be glad to try them out. If anyone can suggest changes to packet to try, I''ll make those changes to see if helps. (It''s beyond my ken to try to understand what packet is doing...) If I can''t get this resolved, I''ll have to go on to something else (beanstalkd?) Thanks for any help, John Miller
Looks like, PATH is not proper when god is automatically starting it. Check if "packet_worker_runner" script is in PATH.Its a executable, that packet installs when gem gets installed. On Fri, 2008-09-12 at 12:43 -0400, John Miller wrote:> All, > > Just joined, so can''t reply to earlier thread regarding the problem > with packet on leopard. Here is some data detailing the situation on > my machine. > > I have only one worker defined (in addition to the default log_worker). > > If I manually "script/backgroundrb start" from my rails root, > everything works fine. > > However, I''m trying to bring this to a production level, using god. > > If I manually start god with "god -c /path/to/config/background.god" > then god will start backgroundrb if it isn''t currently running, and > everything works fine. > > The problem occurs when I use launchd to automatically start god on > reboot. When that happens, backgroundrb starts, but I get the > following error in backgroundrb_debug_11006.log: > > ------------------------------------------- > /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:116:in `exec'': No such file or directory - > packet_worker_runner 8:7:log_worker:17:/Users/jmillr/rails/ > mchanntesting/lib/workers:/Users/jmillr/rails/mchanntesting/script/ > load_worker_env (Errno::ENOENT) > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:116:in `fork_and_load'' > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:80:in `start_worker'' > from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ > server/lib/master_proxy.rb:16:in `initialize'' > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:19:in `run'' > from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ > server/lib/master_proxy.rb:14:in `initialize'' > from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46:in `new'' > from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46 > /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:116:in `exec'': No such file or directory - > packet_worker_runner 11:10:symbol_data_worker:4:/Users/jmillr/rails/ > mchanntesting/lib/workers:/Users/jmillr/rails/mchanntesting/script/ > load_worker_env (Errno::ENOENT) > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:116:in `fork_and_load'' > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:68:in `load_workers'' > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:63:in `each'' > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:63:in `load_workers'' > from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ > packet_master.rb:20:in `run'' > from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ > server/lib/master_proxy.rb:14:in `initialize'' > from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46:in `new'' > from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46 > Client disconected > ------------------------------------------- > > Neither worker is found. > > Let me repeat: It all works fine when I manually start background.rb > or manually start god which then starts backgroundrb. The problem only > occurs when I use launchd to start god. (And, by the way, the problem > is the same if I use launchd to autostart backgroundrb; this was > before I tried god.) > > The problem appears to be in packet (on MacOS X 10.5). > > I can send any of the launch plist, god config, or worker files, but > as I''ve said, it works great if I invoke the system manually. > > If anyone has any suggestions, I''d be glad to try them out. If anyone > can suggest changes to packet to try, I''ll make those changes to see > if helps. (It''s beyond my ken to try to understand what packet is > doing...) If I can''t get this resolved, I''ll have to go on to > something else (beanstalkd?) > > Thanks for any help, > > John Miller > > _______________________________________________ > Backgroundrb-devel mailing list > Backgroundrb-devel at rubyforge.org > http://rubyforge.org/mailman/listinfo/backgroundrb-devel
Thanks so much for the pointer. Indeed, all I had to do was add the following to the .plist: <key>EnvironmentVariables</key> <dict> <key>PATH</key> <string>/usr/local/bin</string> </dict> and voila, no problems running the worker! Thanks again, hemant; I''m looking forward to adding more workers as the app develops. John On Sep 12, 2008, at 9:13 PM, hemant kumar wrote:> Looks like, PATH is not proper when god is automatically starting it. > Check if "packet_worker_runner" script is in PATH.Its a executable, > that > packet installs when gem gets installed. > > > On Fri, 2008-09-12 at 12:43 -0400, John Miller wrote: >> All, >> >> Just joined, so can''t reply to earlier thread regarding the problem >> with packet on leopard. Here is some data detailing the situation on >> my machine. >> >> I have only one worker defined (in addition to the default >> log_worker). >> >> If I manually "script/backgroundrb start" from my rails root, >> everything works fine. >> >> However, I''m trying to bring this to a production level, using god. >> >> If I manually start god with "god -c /path/to/config/background.god" >> then god will start backgroundrb if it isn''t currently running, and >> everything works fine. >> >> The problem occurs when I use launchd to automatically start god on >> reboot. When that happens, backgroundrb starts, but I get the >> following error in backgroundrb_debug_11006.log: >> >> ------------------------------------------- >> /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:116:in `exec'': No such file or directory - >> packet_worker_runner 8:7:log_worker:17:/Users/jmillr/rails/ >> mchanntesting/lib/workers:/Users/jmillr/rails/mchanntesting/script/ >> load_worker_env (Errno::ENOENT) >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:116:in `fork_and_load'' >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:80:in `start_worker'' >> from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ >> server/lib/master_proxy.rb:16:in `initialize'' >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:19:in `run'' >> from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ >> server/lib/master_proxy.rb:14:in `initialize'' >> from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46:in >> `new'' >> from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46 >> /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:116:in `exec'': No such file or directory - >> packet_worker_runner 11:10:symbol_data_worker:4:/Users/jmillr/rails/ >> mchanntesting/lib/workers:/Users/jmillr/rails/mchanntesting/script/ >> load_worker_env (Errno::ENOENT) >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:116:in `fork_and_load'' >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:68:in `load_workers'' >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:63:in `each'' >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:63:in `load_workers'' >> from /usr/local/lib/ruby/gems/1.8/gems/packet-0.1.13/lib/packet/ >> packet_master.rb:20:in `run'' >> from /Users/jmillr/rails/mchanntesting/vendor/plugins/backgroundrb/ >> server/lib/master_proxy.rb:14:in `initialize'' >> from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46:in >> `new'' >> from /Users/jmillr/rails/mchanntesting/script/backgroundrb:46 >> Client disconected >> ------------------------------------------- >> >> Neither worker is found. >> >> Let me repeat: It all works fine when I manually start background.rb >> or manually start god which then starts backgroundrb. The problem >> only >> occurs when I use launchd to start god. (And, by the way, the problem >> is the same if I use launchd to autostart backgroundrb; this was >> before I tried god.) >> >> The problem appears to be in packet (on MacOS X 10.5). >> >> I can send any of the launch plist, god config, or worker files, but >> as I''ve said, it works great if I invoke the system manually. >> >> If anyone has any suggestions, I''d be glad to try them out. If anyone >> can suggest changes to packet to try, I''ll make those changes to see >> if helps. (It''s beyond my ken to try to understand what packet is >> doing...) If I can''t get this resolved, I''ll have to go on to >> something else (beanstalkd?) >> >> Thanks for any help, >> >> John Miller >> >> _______________________________________________ >> Backgroundrb-devel mailing list >> Backgroundrb-devel at rubyforge.org >> http://rubyforge.org/mailman/listinfo/backgroundrb-devel > > >