MB-9477: generalized parse_validate_number/3 for floats

Change-Id: I2fe16f8699d44bf4c25860fb3fa4fde3336dca05
Reviewed-on: http://review.couchbase.org/30107
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Artamonau <aliaksiej.artamonau@gmail.com>
MB-9477: allow floating point purge interval

Change-Id: I6f3baca9f717ac1a44d5175c628319efd75f100f
Reviewed-on: http://review.couchbase.org/30108
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Artamonau <aliaksiej.artamonau@gmail.com>
MB-9468: implement ability to specify extra args for child ports

I.e. so that we folks can tweak connections count, threads count etc
with ease.

Change-Id: I0dd33d94d91e3d999cac7c06d9a48177b0405d80
Reviewed-on: http://review.couchbase.org/30106
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Artamonau <aliaksiej.artamonau@gmail.com>
MB-100: fixed backtrace sanitization to not exclude too much

Change-Id: I43a81485e2a2558a5001007efd3462a984ca73f8
Reviewed-on: http://review.couchbase.org/30109
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Artamonau <aliaksiej.artamonau@gmail.com>
MB-9407 extend get_disk_data fix (MB-6540) to OS X Mavericks

and future Darwin versions

Change-Id: Ia4ad0a7658b3a54abae3bad14dec90c10bbd94f0
Reviewed-on: http://review.couchbase.org/30149
Tested-by: Artem Stemkovski <artem@couchbase.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
MB-9462: renamed cas_config/2 to cas_remote_config/2

To better reflect it's meaning. I.e. it's not announcing config
changes in ns_config_events_local.

Change-Id: I001e7d0aff446e5f73697766cedeeb992ed15f48
Reviewed-on: http://review.couchbase.org/30114
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-9462: introduced cas_local_config/2

And using it in ns_config:run_txn.

Original issue was introduced by recent switch of
ns_cluster:node_add_transaction to ns_config:run_txn.

And real bug was that ns_config:run_txn was using cas_config, which
wasn't sending changed keys to ns_config_events_local. Causing those
keys not to be replicated.

The fix is introducing cas_config version that assumes that source of
changes is local and announces changes to
ns_config_events_local. run_txn therefore fixed by using that version
of cas_config.

Change-Id: I3b89e5f0248bbbe9ece2e0f102f55bff4214ea29
Reviewed-on: http://review.couchbase.org/30115
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-100: log more push_keys-replicated keys

Change-Id: I936501dddc2b0be59d2a6a8273176c069e7e292c
Reviewed-on: http://review.couchbase.org/30116
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-100: ask all buckets's warmup-ness in parallel

I.e. so that ns_heart doesn't risk missing autofailover deadlines if
there are many buckets.

Change-Id: If008e03742080d0bb95215656b52b572c9884339
Reviewed-on: http://review.couchbase.org/30122
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-100: removed wrong doc comment on top of mb_master

Change-Id: I685eab3e37ccc40293861d38b6152c8c821421ef
Reviewed-on: http://review.couchbase.org/30123
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-5177: added port 8091 requests rate stat

Change-Id: I2b77f5bb6d80200d3c28d7a5d293b0e303a899da
Reviewed-on: http://review.couchbase.org/30124
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-5177: log system stats periodically

Change-Id: I7b8f44e1b9ccbf5b6147459dbce0fa20b57d3614
Reviewed-on: http://review.couchbase.org/30125
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-5177: added hibernated connections stats

Change-Id: Id5c4ea9105a6f137dbc4fe14676216230b903682
Reviewed-on: http://review.couchbase.org/30138
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-100: added facility to trace latency histograms

Change-Id: I39cbf7094b1cbee9e5f0e74bbda4984e35369a19
Reviewed-on: http://review.couchbase.org/30145
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-100: started tracking timer lag histo

Which should be particularly helpful for detecting unhealthy erlang or
much overprovisioned VMs.

Change-Id: I85f22f9616da5ba738a99c9668dad90df52408c4
Reviewed-on: http://review.couchbase.org/30146
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
MB-100: separated "expensive" heartbeat status building...

into dedicated process.

So that anything things like rare filesystem access or stats access
cannot cause missed heartbeat and therefore false-positive
autofailover. Particularly, we know that with large count of buckets
and heavier loaded system, some of that information can take longer to
gather.

There's now separate process that listens to status update requests
from main heartbeat process. And heartbeat process is only willing to
wait for fresh slow status for heartbeat interval. In case slow status
update takes longer than that, heartbeat sends last seen stale slow
status (with indication how stale it is).

There's now new system_stats histogram to track slow status gathering
latencies: status_latency.

Change-Id: I38cccda3e469f831a1dbdedc416c34a4630e7fb1
Reviewed-on: http://review.couchbase.org/30147
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Artem Stemkovski <artem@couchbase.com>
Merge commit 'origin/for-rackaware^^^^'

* commit 'origin/for-rackaware^^^^':
  MB-100: separated "expensive" heartbeat status building...
  MB-100: started tracking timer lag histo
  MB-100: added facility to trace latency histograms
  MB-5177: added hibernated connections stats
  MB-5177: log system stats periodically
  MB-5177: added port 8091 requests rate stat
  MB-100: removed wrong doc comment on top of mb_master
  MB-100: ask all buckets's warmup-ness in parallel
  MB-100: log more push_keys-replicated keys
  MB-9462: introduced cas_local_config/2
  MB-9462: renamed cas_config/2 to cas_remote_config/2
  MB-9407 extend get_disk_data fix (MB-6540) to OS X Mavericks
  MB-100: fixed backtrace sanitization to not exclude too much
  MB-9468: implement ability to specify extra args for child ports
  MB-9477: allow floating point purge interval
  MB-9477: generalized parse_validate_number/3 for floats

Trivial merge

Change-Id: I917b3e696a3b8959633518ce372d320d1a9cb86c