diff options
author | Robert Dionne <bob@cloudant.com> | 2011-04-19 12:06:37 -0400 |
---|---|---|
committer | Adam Kocoloski <adam@cloudant.com> | 2011-04-19 13:09:18 -0400 |
commit | a9410e622d84c4b6c017d16ea600e9b19e306c59 (patch) | |
tree | 6d5ff8a1a10fef103594072b50d55990ccc43607 /apps/couch/include/couch_db.hrl | |
parent | 663d04f907ba0f8e23bab0eb2492c431246974fa (diff) |
Track and report size of live data in DBs and views
The #full_doc_info record is extended to include the summed size of
leaf revision document bodies and their attachments. Document sizes
are computed on update; accurate sizes of existing databases and
view groups are only available after compaction.
The document size is defined to be the size of the binary
representation of #doc.body. The att_len field is used for
attachments; attachments that are shared by multiple revisions of a
document are only counted once. The size of a view index is defined as
the size of all keys, values, and reductions accessible from the current
root of the tree.
BugzID: 9995
Diffstat (limited to 'apps/couch/include/couch_db.hrl')
-rw-r--r-- | apps/couch/include/couch_db.hrl | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/apps/couch/include/couch_db.hrl b/apps/couch/include/couch_db.hrl index b2f02cee..6b3d53a1 100644 --- a/apps/couch/include/couch_db.hrl +++ b/apps/couch/include/couch_db.hrl @@ -65,6 +65,7 @@ {id = <<"">>, update_seq = 0, deleted = false, + data_size = 0, rev_tree = [] }). @@ -298,3 +299,11 @@ set_timeout_fun, stop_fun }). + +-record(leaf, { + deleted, + ptr, + seq, + size = 0, + atts = [] +}). |