[PATCH 0018/7508] Metrics: Fix the size of the indices array.

RB_ID=145008

(sapling split of c3066d97fd1e1d551285947f73aa86aef1c3ca58)
[PATCH 0019/7508] Metrics: Refactor the Histogram interface, remove getQuantiles, introduce getQuantile.

RB_ID=145013

(sapling split of aae6a715a440981592642a6a458ac342742122b5)
[PATCH 0037/7508] Metrics: Overall cleanup (code + tests)

RB_ID=145208

(sapling split of 1029d15d4f686e97d50c5db42bd4fa8b05b3c1eb)
[PATCH 0041/7508]  Fix bug in ApproximateHistogram where querying the 0th quantile causes an exception

RB_ID=145677

(sapling split of 193c4b89fcc0b320b8a76a7fd9d307e926e501e4)
[PATCH 0069/7508]  Pants: print version and prompt to upgrade (if necessary) on failure

RB_ID=146783

(sapling split of 69c0f911236008d72033137410b93f90d71fc7de)
[PATCH 0070/7508]  Metrics: optimize getPercentile

Two main optimization has been done:
- add a flag that specify if leaves are sorted. So that if you query multiple time the histogram with multiple quantile, the first one trigger the sort and all the remaining ones are super fast. (common case with metrics.Histogram multi-gauge implementation)
- Biased the histogram to high quantiles (find biggest number first instead of smallest). It makes sense because most quantile are tail-quantile (0.99, 0.999), they are now super fast to compute.

RB_ID=146021

(sapling split of a2a5ad34a3baa123f1ce02510987a6cd02ad425c)
[PATCH 0071/7508]  Metrics: Improve algorithm to find initial buffer size and tree depth.

RB_ID=145767

(sapling split of 72101580546a16bcc354a8b958f1e6a09f73a11b)
[PATCH 0072/7508]  Fix incorrect usage of MemoryMXBean causing flat memory stats.

RB_ID=147289

(sapling split of 3613560947c0d7d476414c1672ba1db1a8df4c82)
[PATCH 0073/7508]  Support custom naming schemes for ZooKeeper groups

Added support for custom naming schemes in ZooKeeper groups that
implement the Group.NodeNameScheme interface that are passed in through
the constructor.

Added backwards compatibility in the form of Group.DefaultNamingScheme
so that existing usage does not break.

Documented changes in constructor API, the new interface, and the new
default implementation.

Added test GroupTest.testJoinCustomNamingScheme to test that the nodes
are named according to the new naming scheme and a listener is updated
regarding their presence.

Signed-off-by: jsirois <jsirois@twitter.com>

RB_ID=147279

(sapling split of 4e57bfee2995a4a7f53cac398da545a462eef635)
[PATCH 0075/7508] Fix for duplicate key error for duplicate negative names.

RB_ID=147305

(sapling split of ba970d7424c03af691c91d8caa8d279f66c92466)
[PATCH 0085/7508]  Re-package the JUnitConsoleRunner.

RB_ID=148068

(sapling split of ebc6b610bb564bf49fa1201155a0e2f7f3dfd470)
[PATCH 0086/7508] Fixup com.twitter.common#junit-runner to contain the main.

RB_ID=148418
NO-QUEUE=true

(sapling split of 6ccb4480af84180b60e47073f33804d20ea81833)
[PATCH 0189/7508] Take into account wrapping a 32 bit signed integer

RB_ID=149556
NO-QUEUE=true

(sapling split of ba93ab07b224afad3384b98f5fbe7804d2b6b1ac)
[PATCH 0334/7508] Adding path for server set empty message

RB_ID=150416

(sapling split of 9aefde9ccfb27b60ae46d99725627b35108fb518)
[PATCH 0336/7508] Added an option to ConsoleRunner to run a fixed subset (shard) of tests.

RB_ID=151037

(sapling split of 6f1af2609a9b46fe17d3b84d6196f7fd878eb8e3)
[PATCH 0337/7508] Fix TTextProtocol to support Union TTextProtocol can not handle TUnion structure: When computeFieldNameMap in StructContext.getCurrentThriftMessageClass(), it looks up the callstack to determine which structure currently is being parsed. It works for most of cases, exception TUnion, because TUnion has its implementation of read/write and any TUnion thrift structure does not override its read and write class. As a result, when the parser comes to any TUnion, it only knows TUnion, but not the specific thrift struct. Thus we can't get the field map.

 This CL only fixes the serialization path, where it now can output TUnion type field. However, when deserialize it would fail, because without FieldMap, it can never restore the field back.

RB_ID=130974

(sapling split of 59e06317cb187b098b37d55324867db3ad772075)
[PATCH 0350/7508] Finished ConsoleRunnerTest implementation.

RB_ID=151429

(sapling split of 382b444dc9acc717bb6a68652fe1d501a0aaf2c6)
[PATCH 0352/7508] The second phase of changes required after publishing updated binary for ConsoleRunner.

RB_ID=151969

(sapling split of 126d5721e0bbe36fa1a9f9c0155b198918a1da13)
[PATCH 0396/7508] Metrics: Add WindowedHistogram and MergedHistogram

RB_ID=150056

(sapling split of c90dcd29d99f36dd79aa08cf20bd2d6d93d20251)
[PATCH 0446/7508] Metrics: Add a synchronized getQuantiles

RB_ID=152644

(sapling split of cdca51583f4480976d28e96493201cb6b6732383)