[ANN] forkoff - parallel processing for ruby enumerables

I had some issues using active record objects inside the code block. It
seems that activerecord does not allow concurrency by default, and I ended
up with "MySQL server has gone away" messages as a result.

I found a couple of possible fixes here
http://www.ruby-forum.com/topic/123472, and am not sure which one is best to
use.

The first is just to add "ActiveRecord::Base.allow_concurrency = true" which
seems to work fine for me and is certainly the simplest.

The other is to "ActiveRecord::Base.remove_connection" before forkoff! then
"ActiveRecord::Base.establish_connection(dbconfig)" first thing in the code
block, then "ActiveRecord::Base.establish_connection(dbconfig)" after
forkoff.

If the second method is better then it would probably be best added to the
gem. Any advice?

this is purely an active record issue - nothing to do with forkoff. the ar code doesn't carry itself across a fork - there are a few patches out there that fix this - one by a guy in denver - can't recall his name - anyone?

a @ http://codeforpeople.com/

···

On Apr 21, 2008, at 2:39 PM, Brandon Hoult wrote:

The other is to "ActiveRecord::Base.remove_connection" before forkoff! then
"ActiveRecord::Base.establish_connection(dbconfig)" first thing in the code
block, then "ActiveRecord::Base.establish_connection(dbconfig)" after
forkoff.

If the second method is better then it would probably be best added to the
gem. Any advice?

--
we can deny everything, except that we have the possibility of being better. simply reflect on that.
h.h. the 14th dalai lama

Check out the code for spawn, the guys have fixed this

···

--
Posted via http://www.ruby-forum.com/.