You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@couchdb.apache.org by Erick Johnson <ej...@gmail.com> on 2010/06/08 17:24:57 UTC
_revs_limit and _compact in 0.11
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:foobar@127.0.0.40:5984/testing-compaction
{"ok":true}
$ curl -XPUT http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit
-d "100"
{"ok":true}
$ curl http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit
100
$ curl -XPOST http://erick:foobar@127.0.0.40:5984/testing-compaction/_compact
{"ok":true}
$ curl http://erick:foobar@127.0.0.40: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
Re: _revs_limit and _compact in 0.11
Posted by Erick Johnson <ej...@gmail.com>.
Cheers all,
Thanks for the prompt replies
On 6/8/10 12:52 PM, Adam Kocoloski wrote:
> 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<fd...@gmail.com>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<ej...@gmail.com>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:foobar@127.0.0.40:5984/testing-compaction
>>>> {"ok":true}
>>>> $ curl -XPUT
>>>> http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit -d
>>>> "100"
>>>> {"ok":true}
>>>> $ curl http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit
>>>> 100
>>>> $ curl -XPOST
>>>> http://erick:foobar@127.0.0.40:5984/testing-compaction/_compact
>>>> {"ok":true}
>>>> $ curl http://erick:foobar@127.0.0.40: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,
>>> fdmanana@gmail.com
>>>
>>> "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,
>> fdmanana@gmail.com
>>
>> "Reasonable men adapt themselves to the world.
>> Unreasonable men adapt the world to themselves.
>> That's why all progress depends on unreasonable men."
>
Re: _revs_limit and _compact in 0.11
Posted by Adam Kocoloski <ko...@apache.org>.
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 <fd...@gmail.com>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 <ej...@gmail.com>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:foobar@127.0.0.40:5984/testing-compaction
>>> {"ok":true}
>>> $ curl -XPUT
>>> http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit -d
>>> "100"
>>> {"ok":true}
>>> $ curl http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit
>>> 100
>>> $ curl -XPOST
>>> http://erick:foobar@127.0.0.40:5984/testing-compaction/_compact
>>> {"ok":true}
>>> $ curl http://erick:foobar@127.0.0.40: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,
>> fdmanana@gmail.com
>>
>> "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,
> fdmanana@gmail.com
>
> "Reasonable men adapt themselves to the world.
> Unreasonable men adapt the world to themselves.
> That's why all progress depends on unreasonable men."
Re: _revs_limit and _compact in 0.11
Posted by Filipe David Manana <fd...@gmail.com>.
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 <fd...@gmail.com>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 <ej...@gmail.com>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:foobar@127.0.0.40:5984/testing-compaction
>> {"ok":true}
>> $ curl -XPUT
>> http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit -d
>> "100"
>> {"ok":true}
>> $ curl http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit
>> 100
>> $ curl -XPOST
>> http://erick:foobar@127.0.0.40:5984/testing-compaction/_compact
>> {"ok":true}
>> $ curl http://erick:foobar@127.0.0.40: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,
> fdmanana@gmail.com
>
> "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,
fdmanana@gmail.com
"Reasonable men adapt themselves to the world.
Unreasonable men adapt the world to themselves.
That's why all progress depends on unreasonable men."
Re: _revs_limit and _compact in 0.11
Posted by Filipe David Manana <fd...@gmail.com>.
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 <ej...@gmail.com> 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:foobar@127.0.0.40:5984/testing-compaction
> {"ok":true}
> $ curl -XPUT
> http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit -d
> "100"
> {"ok":true}
> $ curl http://erick:foobar@127.0.0.40:5984/testing-compaction/_revs_limit
> 100
> $ curl -XPOST
> http://erick:foobar@127.0.0.40:5984/testing-compaction/_compact
> {"ok":true}
> $ curl http://erick:foobar@127.0.0.40: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,
fdmanana@gmail.com
"Reasonable men adapt themselves to the world.
Unreasonable men adapt the world to themselves.
That's why all progress depends on unreasonable men."