Add support for database compaction.
This commit is contained in:
parent
12c09085df
commit
dd7f109878
2 changed files with 17 additions and 2 deletions
|
@ -149,7 +149,12 @@ module CouchRest
|
|||
slug = CGI.escape(doc['_id'])
|
||||
CouchRest.delete "#{@root}/#{slug}?rev=#{doc['_rev']}"
|
||||
end
|
||||
|
||||
|
||||
# Compact the database, removing old document revisions and optimizing space use.
|
||||
def compact!
|
||||
CouchRest.post "#{@root}/_compact"
|
||||
end
|
||||
|
||||
# DELETE the database itself. This is not undoable and could be rather
|
||||
# catastrophic. Use with care!
|
||||
def delete!
|
||||
|
|
|
@ -461,6 +461,16 @@ describe CouchRest::Database do
|
|||
end
|
||||
end
|
||||
|
||||
|
||||
describe "compacting a database" do
|
||||
it "should compact the database" do
|
||||
db = @cr.database('couchrest-test')
|
||||
# r =
|
||||
db.compact!
|
||||
# r['ok'].should == true
|
||||
end
|
||||
end
|
||||
|
||||
describe "deleting a database" do
|
||||
it "should start with the test database" do
|
||||
@cr.databases.should include('couchrest-test')
|
||||
|
@ -475,4 +485,4 @@ describe CouchRest::Database do
|
|||
end
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue