make utf8 bytes response not reuse thread local buffer
no need, optimized conversion to bytes anyhow, and when sending, it will just get wrapped by a buffer
automatically set translog buffer size based on number of shards
similar to how we set the indexing buffer size, automatically set the translog buffer size based on the number of shards allocated on a node
optimize reroute
- optimize initialization of building the all the assigned shards state
- optimize iteration in throttling allocation decider
Don't reset TokenStreams twice when highlighting.

When using PlainHighlighter, TokenStreams are resetted both before highlighting
and at the beginning of highlighting, causing issues with analyzers that read
in reset() such as PatternAnalyzer. This commit removes the call to reset which
was performed before passing the TokenStream to the highlighter.

Close #3200
Added an error message for when child mapping is not properly configured (incorrect type)
update to latest jsr166
latest jsr166 upgrade only compiled with 1.7
Introducing Aggregations Module

Initial commit for the aggregation module. There are four main constructs for each aggregation:

 * aggregation - represents the outcome of the aggregation
 * aggregator - the request scope construct that computes the aggregation
 * aggregator factory - creates an aggregator of a specific type (can be configured for that type)
 * aggregator parser - parses the request xcontent and creates the appropriate aggregator factory

 There are two types of aggregations (and therefore, there are two types of aggregators):

  * Calc - an aggregation that computes counts/stats across a set of documents (eg. avg, sum, min, max,...)
  * Bucket - an aggregation that creates buckets over a set of documents, where each buckets effectively defines a set of documents (eg. terms, range, histogram, missing, filter, ...)

  The bucket aggregators can be seen as compound aggregators which can contain other aggregators. The aggregators contained in a bucket aggregator will be applied for each of the buckets that are created byt he bucket aggregator.
initial commit of the value source based implementation
second commit
third commit
cleanup & refactoring 1
cleanup & refactoring 2
cleanup & refactoring 3 - remove most of the date histogram classes and kept it minimal by reusing all the normal histogram constructs
- introducing numeric value source and value parser
- made aggregator search context aware
- api cleanup
introduced the field values context & factory
added nested aggregation support
cleanup & documentation
- added aggregations request builders
- fixed a stack overflow bug in FieldDataSource
- started to add tests for the aggregations
- added tests for the aggregations