MB-7671 Check fragmentation before compacting vbucket.
MB-7671 Check fragmentation before compacting vbucket.

When we decide to compact or not to compact a bucket we just take a
random sample of vbuckets and check aggregated fragmentation of these
vbuckets. Although not very likely, it's possible that we'll decide to
compact entire bucket when only few vbuckets have high
fragmentation. To avoid an overhead of compacting vbuckets that don't
really need thie, now we check fragmentation of every single vbucket
before compacting it.

Change-Id: Iaa719c45800caf46c726cd06eb8afb2113b47887
[76658a2722cfc360b68a81107f0c193549bc08f4@tut.by: added jira ticket]
Signed-off-by: Aliaksey Kandratsenka <76658a2722cfc360b68a81107f0c193549bc08f4@tut.by>
Reviewed-on: http://review.couchbase.org/24280
Tested-by: Aliaksey Kandratsenka <340b8e09ca65cd3fc686427fcfed17e87eaf61e2@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <340b8e09ca65cd3fc686427fcfed17e87eaf61e2@gmail.com>

mschoch/ns_server,pavel-blagodov/ns_server,membase/ns_server,vzasade/ns_server,mschoch/ns_server,mschoch/ns_server,daverigby/ns_server,mschoch/ns_server,vzasade/ns_server,pavel-blagodov/ns_server,daverigby/ns_server,membase/ns_server,ceejatec/ns_server,nimishzynga/ns_server,nimishzynga/ns_server,t3rm1n4l/ns_server,membase/ns_server,nimishzynga/ns_server,mschoch/ns_server,ceejatec/ns_server,ceejatec/ns_server,nimishzynga/ns_server,mschoch/ns_server,membase/ns_server,pavel-blagodov/ns_server,vzasade/ns_server,membase/ns_server,ceejatec/ns_server,nimishzynga/ns_server,t3rm1n4l/ns_server,ceejatec/ns_server,ceejatec/ns_server,t3rm1n4l/ns_server,vzasade/ns_server,daverigby/ns_server,t3rm1n4l/ns_server,daverigby/ns_server,pavel-blagodov/ns_server,t3rm1n4l/ns_server,membase/ns_server,nimishzynga/ns_server,daverigby/ns_server