I've tested with this quite a bit now and it's much faster, in some
cases 4 times, but it is sensitive to both doc size and batch sizes so
in some cases the speed may only be about 4-10% better. It's
definitely much improved in the file footprint resulting in faster
compaction also.
It's interesting to note that a good amount of the speed improvement
comes from a reduced number of calls to couch_util:to_hex because it's
only used for the prefix and not for every id as it is in the
new_uuid() case. In one of the hovercraft tests I ran this method was
cut from 36% to 25% of the run time. You can see this using eprof.
This method is also used in the rev stuff so it's a good candidate to
look at for optimization.
So I"m +1 on this, but I think the other devs ought to noodle it some
to double check it conceptually, .ie. that we have global uniqueness
and it won't present issues elsewhere. Definitely a nice hack.
Cheers,
Bob
On Aug 17, 2009, at 5:18 PM, Robert Newson wrote:
I was hoping for more feedback on COUCHDB-465 as the alternate uuid
generation algorithm there seems to double insertion speed and reduces
the need to run compaction.
B.
https://issues.apache.org/jira/browse/COUCHDB-465
On Mon, Aug 17, 2009 at 10:10 PM, Noah Slater<[email protected]>
wrote:
On Mon, Aug 17, 2009 at 01:58:56PM -0700, Chris Anderson wrote:
We've been sprinting extra hard for the last week to get a lot of
new
power into CouchDB. I think we're close on Windows support, we just
got native view servers, we've added a bunch of robustness around
external process handling. There's a bunch more that's happened
since
0.9 but the point of this thread is not to list the changes, but to
see if there are patches that people feel should go in now, so they
make the 0.10 release. Hopefully this is a short list, as I think
most
of the last-minute patching has been done, but if something's
important and easy, we shouldn't forget it.
I don't want to be the damp squid[1] here, but for now, shipping
with the recent
changes for Windows, or at least claiming Windows support, will get
my -0 or -1
vote depending on how convincing people's arguments get.
I wasn't even aware that this had properly landed yet, and it would
certainly
need to be simmered in trunk for a few months, with a wide call for
testing,
before I would be happy shipping it.
[1] http://eggcorns.lascribe.net/english/416/squid/
Best,
--
Noah Slater, http://tumbolia.org/nslater