Fix active size calculations for views
authorPaul J. Davis <paul.joseph.davis@gmail.com>
Fri, 15 Jun 2018 16:44:20 +0000 (11:44 -0500)
committerPaul J. Davis <paul.joseph.davis@gmail.com>
Fri, 15 Jun 2018 18:39:18 +0000 (13:39 -0500)
commit000766c4f8b51562757818dfa36b3e6579d16309
treee9ae5d29069fbd958c0a694b9290e502db410733
parentc7d35c3133499fcb2f7989aea0c4c0e9277351f9
Fix active size calculations for views

It was brought to my attention that the active size looked a bit funny
occasionally as it could be larger than the file size. Given that active
size is defined to be the number of bytes used in a view file it must be
strictly greater than or equal to zero as well as less than or equal to
file size. Thus the great hunt had begun!

While I'd love more than anything to regail you, Dear Reader, with the
tales, the joys, the highs, and yes, even the lows of this search, it
turns out that I cannot. I must not. For there were none!

Turns out this was a trivial bug where we were re-using the ExternalSize
calculation instead of applying `couch_btree:size/1` to all of the
btrees in the `#mrview` records. Simple bug comes with a correspondingly
simple fix.

I also noticed that the info tests were broken and not being run so I
spent a few minutes cleaning those up to make the various assumptions.
src/couch_mrview/src/couch_mrview_index.erl
src/couch_mrview/src/couch_mrview_util.erl
src/couch_mrview/test/couch_mrview_index_info_tests.erl