Update forbidden-apis to 1.5.1 and remove the relaxed missing classes error.
Merge remote-tracking branch 'upstream/master'
Merge branch 'master' of https://github.com/elasticsearch/elasticsearch
Transport: better categorization for transport actions

Our transport relies on action names that tell what we need to do with each message received and sent on any node, together with the content of the request itself.
The action names could use a better categorization and more consistent naming though, the following are the categories introduced with this commit:

- indices: for all the apis that execute against indices
  - admin: for the apis that allow to perform administration tasks against indices
  - data: for the apis that are about data
    - read: apis that read data
    - write: apis that write data
    - benchmark: apis that run benchmarks

- cluster: for all the cluster apis
  - admin: for the cluster apis that allow to perform administration tasks
  - monitor: for the cluster apis that allow to monitor the system

- internal: for all the internal actions that are used from node to node but not directly exposed to users

The change is applied in a backwards compatible manner: we keep the mapping old-to-new action name around, and when receiving a message, depending on the version of the node we receive it from, we use the received action name or we convert it to the previous version (old to new if version < 1.4). When sending a message, depending on the version of the node we talk to, we use the updated action or we convert it to the previous version (new to old if version < 1.4).
For the cases where we don't know the version of the node we talk to, namely unicast ping, transport client nodes info and transport client sniff mode (which calls cluster state), we just use a lower bound for the version, thus we will always use the old action name, which can be understood by both old nodes and new nodes.

Added test that enforces known updated categories for transport action names and test that verifies all action names have a pre 1.4 version for bw compatibility

Added backwards compatibility tests for unicast and transport client in sniff mode, the one for the ordinary transport client (which calls nodes info) is implicit as it's used all the time in our bw comp tests.
Added also backwards comp test that sends an empty message to any of the registered transport handler exposed by older nodes and verifies that what gets back is not ActionNotFoundTransportException, which would mean that there is a problem in the actions mappings.

Added TestCluster#getClusterName abstract method and allow to retrieve externalTransportAddress and internalCluster from CompositeTestCluster.

Closes #7105
Search: add time zone setting for relative date math in range filter/query

Filters and Queries now supports `time_zone` parameter which defines which time zone should be applied to the query or filter to convert it to UTC time based value.

When applied on `date` fields the `range` filter and queries accept also a `time_zone` parameter.

The `time_zone` parameter will be applied to your input lower and upper bounds and will move them to UTC time based date:

[source,js]
--------------------------------------------------
{
    "constant_score": {
        "filter": {
            "range" : {
                "born" : {
                    "gte": "2012-01-01",
                    "lte": "now",
                    "time_zone": "+1:00"
                }
            }
        }
    }
}

{
    "range" : {
        "born" : {
            "gte": "2012-01-01",
            "lte": "now",
            "time_zone": "+1:00"
        }
    }
}
--------------------------------------------------

In the above examples, `gte` will be actually moved to `2011-12-31T23:00:00` UTC date.

NOTE: if you give a date with a timezone explicitly defined and use the `time_zone` parameter, `time_zone` will be
ignored. For example, setting `from` to `2012-01-01T00:00:00+01:00` with `"time_zone":"+10:00"` will still use `+01:00` time zone.

Closes #3729.
[TEST] Fixed action names bw comp tests, action not found is expected for newly added exists actions
[TEST] Fixed GetTermVectorTests, added missing break statements in randomization switch
Merge branch 'master' of https://github.com/elasticsearch/elasticsearch
Added custom transport client settings to test infra

It's now possible to define the additional customesettings for transport clients by extending `transportClientSettings` callback method on `ElasticsearchIntegrationTest`.
Update forbidden-apis to 1.6
Update forbidden-apis to 1.6
Update forbidden-apis to 1.6
Merge branch 'master' of https://github.com/uschindler/elasticsearch into forbiddenapis-1.6-update
Aggregations: key_as_string only shown when format specified in terms agg

The key_as_string field is now not shown in the terms aggregation for long and double fields unless the format parameter is specified

Closes #7125
[TEST} make sure unicast bw comp test uses specifically set transport port and properly configure unicast hosts

Added also assertBusy block needed since we test the local cluster state on each node, not only on the master node.
add Proxy setting for using plugin command

Closes #7150
[TEST] add explicit options to no master tests
Make "cluster.routing.allocation.allow_rebalance" a dynamic setting

Also makes it a static constant and changes all tests to use it instead
of a string.

Fixes #7092
[TEST] increase ack timeout on large cluster
when we have a small machine running it with randmoized larger number of nodes (5), we need more time to process it
Resolve wording inconsistency

AND and OR filter docs talk about different targets for the operators. I
believe that both should be described in terms of modifying other 'filters'.
I also added articles for easier (human) parsing. This fixes #4762

Closes #7165