[Backgroundrb-devel] Upgrading from older version - how?
emarceta at gmail.com
Fri Mar 28 14:13:15 EDT 2008
We've been using previous version of bdrb (drb based one) for a while
and it was running relatively OK. We recently attempted to upgrade to
the new version to keep up / use supported version but we ended up
reverting to the older version.
Here are the things that moved us to revert :
1) With the workers we never manage to pass this error:
You have a nil object when you didn't expect it!
The error occurred while evaluating nil.send_request
2) It is not clear the difference between Middleman.worker(:my_worker,
key).ask_status and using the nonexistent method
Middleman.worker(:my_worker, key).mumbo_jumbo - they both return nil.
I understand that is related to one way invocation (asynch) but this
just too loose and easy to mixup things.
3) Unit testing - we used backgroundrb_mock.rb that mocks new_worker
and other framework api that manage the creation of workers, so
testing was simple as testing any other Rails classes. This is
actually pretty big one for us.
4) No RDoc - older version has RDoc.
5) ./script/background start | stop are unreliable. Stop throws if the
pid file is not found. Invoking start multiple times start multiple
processes - not sure what that means. Invoking stop afterwards stops
only the one process obviously.
6) Finally it would be great to have some sort of migration cookbook -
how to change the older workers and migrate to the new version. The
number of changes are pretty big and we were never sure whether we
completed the migration.
Hope this does not sound too negative - those are our 'wishes' for new
bdrdb to have.
More information about the Backgroundrb-devel