On Mon, Aug 24, 2009 at 2:36 AM, John Mettraux <[email protected]>wrote:
> > On Mon, Aug 24, 2009 at 4:49 AM, Kenneth Kalmer<[email protected]> > wrote: > > Hi everyone > > > > I took as much time as I could over the weekend to mirror John's ruote-dm > > [1] project in a new ruote-activerecord [2] project. I've promised this > to > > John on earlier occasions and last week in #ruote to Dennis. I have to > note > > that this is being built and tested against ruote 2.0, and no support for > > the 0.9 series is even considered. > > > > Progress is solid, albeit I haven't pushed to Github yet. The > ActiveRecord > > backed expression store and participant are both in and working, I just > need > > to support all of John's additional features in ruote-dm. The > documentation > > will also take an evening to sort out since it is a deceptively large > piece > > of code. > > Wow, that's a serious piece of news :) Great ! (John performs little > dance). Where was my spycam when I needed it :) > Most of the pain I had with active-record >= 2.2.x was about queries > outside of the rails http request "cycle". Was fighting hard to get an > open and valid db connection when there was no GET/POST/... involved > :( Hence the ugly singlecon.rb and co. I spend most of my day job "fighting" with ActiveRecord & Rails, but I also use ActiveRecord a lot outside of Rails, so I'm used to doing everything manually that usually happens in the background with ActionPack. Still, I'm no authority on AR, and will work hard to address any issues that pop up. > Please tell me if I could help in any way. Maybe your work will have > an impact on ruote-dm (features suggestions, ...). Just tell me. Thanks, let me first mirror the functionality you've already got in :) I'm sure with ruote-kit I'll start adding more features, if required. > BTW, there is a convention you'd perhaps want to follow, it's about > this piece of code : > > > http://github.com/jmettraux/ruote/blob/470594686ee5c4d7110199b86fa9adb6828977c0/test/functional/engine_helper.rb#L96-118 > > It 'detects' adjacent engine persistence implementations. For > instance, when the ruote/ dir is next to ruote-dm/, it allows me to > run the functional tests with > > ruby19 test/functional/test.rb --dm > > I.e. with Ruote::Dm::DmPersistedEngine instead of Ruote::Engine (the > default) or Ruote::FsPersistedEngine (--fs). > > In your case, it will expect the adjacent dir ruote-activerecord/ to > contain a *_engine.rb and it will make it available via the > --activerecord switch. It's quite important to test the engine > persistence extensively. > > Note that the -C switch disables the expression caching of the engine > persistence. The engine gets a bit slower but always hits the > persistence. This mode is quite important for multi-process installs > (passenger, mongrel packs, ...). Thanks, this helps a lot. I've also made sure that no queries inside ruote-activerecord uses ActiveRecord's built-in query cache. I'm also supporting ActiveRecord 2.3.3 and later only, and still have to make sure all the queries leverage the thread safety mechanisms provided. > Many thanks !! > > Coffee ? Ristretto please :) Ciao -- Kenneth Kalmer [email protected] http://opensourcery.co.za @kennethkalmer --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
