Fixed now, thanks Erick and Filipe. On Jun 8, 2010, at 12:09 PM, Filipe David Manana wrote:
> Erick, the ticket is at: https://issues.apache.org/jira/browse/COUCHDB-789 > > On Tue, Jun 8, 2010 at 4:54 PM, Filipe David Manana <[email protected]>wrote: > >> It's definitely a bug. >> I am looking at the compaction code, and it doesn't preserve the revs_limit >> parameter in the compacted DB. >> >> I'll create a JIRA ticket, submit a patch and let you know about it. >> >> >> On Tue, Jun 8, 2010 at 4:24 PM, Erick Johnson <[email protected]>wrote: >> >>> Hi all, >>> >>> I'm beginning to get familiar with the administrative functions of couchdb >>> 0.11 >>> and had a question about rev limits and compaction. In my testing it >>> seems >>> rev limits are being reset to the default 1000 after I run _compact, even >>> though the wiki states otherwise: >>> >>> "_revs_limit defines a upper bound of document revisions which CouchDB >>> keeps track of, even after Compaction" >>> >>> http://wiki.apache.org/couchdb/HTTP_database_API#Accessing_Database-specific_options >>> >>> For instance if I run the following series of curl commands that create a >>> new db,set the revs limit, get the revs limit, run compact, and get the revs >>> limit again I see that the revs limit gets reset. >>> >>> Searching jira for "_revs_limit" doesn't return any results, so if anyone >>> could shed any light on the subject for me I would greatly appreciate it. >>> >>> Thank you, >>> >>> Erick Johnson >>> >>> curl and server logs follow.... >>> >>> $ curl -XPUT http://erick:[email protected]:5984/testing-compaction >>> {"ok":true} >>> $ curl -XPUT >>> http://erick:[email protected]:5984/testing-compaction/_revs_limit -d >>> "100" >>> {"ok":true} >>> $ curl http://erick:[email protected]:5984/testing-compaction/_revs_limit >>> 100 >>> $ curl -XPOST >>> http://erick:[email protected]:5984/testing-compaction/_compact >>> {"ok":true} >>> $ curl http://erick:[email protected]:5984/testing-compaction/_revs_limit >>> 1000 >>> >>> The associated debug level server logs are as follows: >>> >>> [debug] [<0.207.0>] 'PUT' /testing-compaction {1,1} >>> Headers: [{'Accept',"*/*"}, >>> {'Authorization',"Basic ZXJpY2s6Zm9vYmFy"}, >>> {'Host',"127.0.0.40:5984"}, >>> {'User-Agent',"curl/7.15.5 (x86_64-redhat-linux-gnu) >>> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5"}] >>> [debug] [<0.207.0>] OAuth Params: [] >>> [info] [<0.207.0>] 127.0.0.40 - - 'PUT' /testing-compaction 201 >>> [debug] [<0.214.0>] 'PUT' /testing-compaction/_revs_limit {1,1} >>> Headers: [{'Accept',"*/*"}, >>> {'Authorization',"Basic ZXJpY2s6Zm9vYmFy"}, >>> {'Content-Length',"3"}, >>> {'Content-Type',"application/x-www-form-urlencoded"}, >>> {'Host',"127.0.0.40:5984"}, >>> {'User-Agent',"curl/7.15.5 (x86_64-redhat-linux-gnu) >>> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5"}] >>> [debug] [<0.214.0>] OAuth Params: [] >>> [info] [<0.214.0>] 127.0.0.40 - - 'PUT' /testing-compaction/_revs_limit >>> 200 >>> [debug] [<0.227.0>] 'GET' /testing-compaction/_revs_limit {1,1} >>> Headers: [{'Accept',"*/*"}, >>> {'Authorization',"Basic ZXJpY2s6Zm9vYmFy"}, >>> {'Host',"127.0.0.40:5984"}, >>> {'User-Agent',"curl/7.15.5 (x86_64-redhat-linux-gnu) >>> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5"}] >>> [debug] [<0.227.0>] OAuth Params: [] >>> [info] [<0.227.0>] 127.0.0.40 - - 'GET' /testing-compaction/_revs_limit >>> 200 >>> [debug] [<0.246.0>] 'POST' /testing-compaction/_compact {1,1} >>> Headers: [{'Accept',"*/*"}, >>> {'Authorization',"Basic ZXJpY2s6Zm9vYmFy"}, >>> {'Host',"127.0.0.40:5984"}, >>> {'User-Agent',"curl/7.15.5 (x86_64-redhat-linux-gnu) >>> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5"}] >>> [debug] [<0.246.0>] OAuth Params: [] >>> [info] [<0.218.0>] Starting compaction for db "testing-compaction" >>> [info] [<0.246.0>] 127.0.0.40 - - 'POST' /testing-compaction/_compact 202 >>> [debug] [<0.269.0>] Compaction process spawned for db "testing-compaction" >>> [debug] [<0.80.0>] New task status for testing-compaction: Flushing >>> [debug] [<0.218.0>] CouchDB swapping files >>> /home/erick/local/var/lib/couchdb/testing-compaction.couch and >>> /home/erick/local/var/lib/couchdb/testing-compaction.couch.compact. >>> [info] [<0.218.0>] Compaction for db "testing-compaction" completed. >>> [debug] [<0.268.0>] 'GET' /testing-compaction/_revs_limit {1,1} >>> Headers: [{'Accept',"*/*"}, >>> {'Authorization',"Basic ZXJpY2s6Zm9vYmFy"}, >>> {'Host',"127.0.0.40:5984"}, >>> {'User-Agent',"curl/7.15.5 (x86_64-redhat-linux-gnu) >>> libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5"}] >>> [debug] [<0.268.0>] OAuth Params: [] >>> [info] [<0.268.0>] 127.0.0.40 - - 'GET' /testing-compaction/_revs_limit >>> 200 >>> >> >> >> >> -- >> Filipe David Manana, >> [email protected] >> >> "Reasonable men adapt themselves to the world. >> Unreasonable men adapt the world to themselves. >> That's why all progress depends on unreasonable men." >> >> > > > -- > Filipe David Manana, > [email protected] > > "Reasonable men adapt themselves to the world. > Unreasonable men adapt the world to themselves. > That's why all progress depends on unreasonable men."
