On 24/01/2011 17:49, Wayne Conrad wrote:
I've subscribed again, from another email address, because the list
decided that my first subscribtion was a eeeeevil spammer. I hope
that's OK. Anyhow...
I've written a cron job that periodically compacts all databases on
all servers, but it needs an automated test, and an automated test
needs a way to know that compaction happend (or, at least, was
triggered). Other than seeing the file size change, is there anything
I can do from the API that will show that my cron job caused
compaction to happen?
Hi Wayne,
If you can create the database you are to compact, then you can use the
rev=??? parameter.
Set up the database, and note the rev of a document (= oldrev)
Update the document (creating _rev=newrev). oldrev is now on disk, but
not normally available.
Read the old version using the rev=oldrev parameter.
Trigger the compaction and wait for it to finish (A 1 record database
won't take long to compact :) )
Read the old record again. This time it won't be found if the compaction
has run.
See
http://wiki.apache.org/couchdb/HTTP_Document_API#Accessing_Previous_Revisions
Regards
Ian