Parent/child: Check if there is a search context, otherwise throw a query parse exception.

Also added a bwc test that runs a delete by query with a has_child query and verifies that only that operation is ignored when recovering from disk during a upgrade.

Closes #8031
Closes #8177
Test: Fix expected error message
[CORE] Don't handle FNF exceptions when reading snapshot

We used to handle FNF exceptions in the store when reading a snapshot.
For instance if we can't open a segments file for a given commit point
we just return an empty metadata object and tracelog the even. This can
cause shards to be false marked as corrupted if a shard is forcefully
removed while a recovery started at the same time. We should in general
bubble up these exceptions and let the caller decided how to handle the
IOExceptions.
Docs: Fixed typo in MissingFilterBuilder

Closes #8185
[SEARCH] Passing fieddata_fields as a non array causes OOM

If `fielddata_fields` are passed as a simple value instead of an array
we end up in an infinite loop createing parsed elements with null
values.
This commit validates the incoming token

Closes #8203
Enable ClusterInfoService by default

Since we enabled the disk threshold decider by default, we need to
enable the cluster info service so that disk usages and shard sizes can
be gathered also.

Adds a test that checks that we are gathering information by default.
[TESTS] Change test node watermarks for DiskThresholdDecider

Ensures that we can still run tests if the machine running them does not
have enough free disk space to be below the high watermark

Conflicts:
	src/test/java/org/elasticsearch/test/ElasticsearchIntegrationTest.java
Update warmers.asciidoc

It is kind of implied right now.  This is just to clarify that warmers will also be run on node startup since we get asked specifically about that.
Update core-types.asciidoc

The doc mentions the ability to disable norms starting in 1.2.0 but does not provide a specific example.  Added an example of the syntax to do so.
[STORE] Don't catch FNF/NSF exception when reading metadata

When reading metadata we do catch FileNotFound and NoSuchFileExceptions
today, log the even and return an empty metadata object. Yet, in some cases
this might be the wrong thing todo ie. if a commit point is provided these
situations are actually an error and should be rethrown. This commit
pushes the responsiblity to the caller to handle this exception.

Closes #8207
Docs: fixed typo in documentation

Closes #8205
Docs: rolling upgrade process seems incorrect

When reading the [rolling upgrade process](http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/setup-upgrade.html#rolling-upgrades), you can see that we wrote:

* disable allocation
* upgrade node1
* upgrade node2
* upgrade node3
* ...
* enable allocation

That won't work as after a node has been removed and restarted, no shard will be allocated anymore.
So closing node2 and remaining nodes, won't help to serve index and search request anymore.

We should write:

* disable allocation
* upgrade node1
* enable allocation
* wait for shards being recovered on node1
* disable allocation
* upgrade node2
* enable allocation
* wait for shards being recovered on node2
* disable allocation
* upgrade node3
* enable allocation
* wait for shards being recovered on node3
* disable allocation
* ...
* enable allocation

I think this documentation update should go in 1.3, 1.4, 1.x and master branches.

Closes #8218
Closes #7973.
[TEST] `Scope.SUITE` is not reproducible due to late cluster initialization

The cluster for `Scope.SUITE` tests must be initialize in a static manner
before the first test runs otherwise the random context used to initialize
the cluster is taken from tests randomness rather than the suites randomness.
This means test clusters will have different setups if only a single test is
executed or even the test might have a entirely different random sequence.
[SORT] Use first non-empty result to detect if sort is required

Closes #8226
Core: Cleanup non nested filter to not flip the bits in the FixedBitSet returned by the wrapped filter.

If the filter producing the FBS were to be cached then it would flip bits each time the NonNestedDocsFilter was executed.
In our case we cache the NonNestedDocsFilter itself so that didn't happen each time this filter was used.
However the hashcode of NonNestedDocsFilter and NestedDocsFilter was the same, since NonNestedDocsFilter directly used NestedDocsFilter#hashCode()

Closes #8227
Closes #8232
Documented that HTTP pipelining is not supported
Test: The non-nested filter should be cached in order for it to produce a FBS
Delete by query: wrap parent filter in FixedBitSetCachingWrapperFilter.

When the none filter cache is used this is required.
Facets: wrap parent filter in FixedBitSetCachingWrapperFilter.

None filter doesn't return FBS
Added left over FixedBitSetCachingWrapperFilter wrapping.