I've submitted the patch to speedup AR::Base::attributes_with_quotes (and
thus, AR::Base::create and AR::Base::update).
The idea is that #attributes_with_quotes clones attributes which not only
takes some time, but also allocates quite some memory.
My measurements show that my rails application during one of lengthy requests
spends 7 extra seconds and allocates (by malloc's) 650 megabytes of memory in
#attributes_with_quotes call (the blog post explaining in details how the
memory consumption was measured and which request tested is at:
http://blog.pluron.com/2008/01/guerrillas-way.html). Of course that memory is
freed by GC, but that takes quite some time to do.
Could somebody take a look at that patch? Is it safe enough to not clone
attributes in this case?