[CLIENT] Add internal liveness action

This commit adds a very lightweight action to the transport
serivce that allows to fetch clustername and the discovery node
from a node. This is used by transport clients to test liveness of
a node without using the nodesinfo API which can be blocking if management
threadpools are busy.

Closes #8763
Factor out PID file creation and add tests

This commit factors out the PID file creation from bootstrap and adds
tests for error conditions etc. We also can't rely on DELETE_ON_CLOSE
since it might not even write the file depending on the OS and JVM implementation.
This impl uses a shutdown hook to best-effort remove the pid file if it was written.

Closes #8771
Remove runtime version checks

This cleanup commmit removes a large protion of the versioned reads / writes
in the network protocol since master requires a full cluster restart.
Internal: remove bwc leftover

This caused some test failures as the readFrom method was not in sync anymore with the writeTo
Internal: remove some more bwc code

Some more code that was left for backwards compatibility can now be removed on master since 2.0 will require a full cluster restart.

Closes #8778
Internal: remove optional original indices

Original indices are optional in ShardDeleteByQueryRequest only for backwards compatibility, see #7406. We can remove this in master since 2.0 will require a full cluster restart.

Closes #8777
[TEST] Fix Link permission to create symoblic links in temp dirs
[Store] Only fail recovery if files are inconsistent

the recovery diff can return file in the `different` category
since it's conservative if it can't tell if the files are the same.
Yet, the cleanup code only needs to ensure both ends of the recovery
are consistent. If we have a very old segments_N file no checksum is present
but for the delete files they might be such that the segments file passes
the consistency check but the .del file doesn't sicne it's in-fact the same
but this check was missing in the last commit.
Core: surgically removed slow scroll, because master (2.0) requires full cluster restart coming from previous versions.
[TEST] produce valid symlinks in tests
Typo in error message with too few points for geo polygon filter.

Closes #8767
Gateway: GatewayService should register cluster state listener before checking for current state

At the moment we may miss a state change and fail to recover on time.

Closes #8789
Debian package: Prevent init script from returning when the service isn't actually started.

Close #6909
Docs: Added a command to start elasticsearch on bootup on Debian.

Close #8600
Docs: Add instructions to start elasticsearch on bootup on RHEL/Fedora.
deb: add systemd service config for upcoming Jessie

This change adds a systemd service configuration file, and adds systemd logic
to installation and de-installation scripts. The upcoming Debian 8 "Jessie"
release will use systemd.

fixes #8943

Signed-off-by: Thilo Fromm <github@thilo-fromm.de>
Packaging: Make ES user own plugins dir, remove on uninstall

This change will chown /usr/share/elasticsearch/plugins to the elasticsearch
user (the directory was formerly owned by root). This enables the ES user to
manage plugins.

Also, /usr/share/elasticsearch/plugins is now removed when the elasticsearch
package is un-installed. Previously it was left lying there.

Closes #8732

Signed-off-by: Thilo Fromm <github@thilo-fromm.de>
[TESTS] Use a _default_ template to load field data lazily

Previously it was possible for the field data clearing in this test to
take too long, causing the test to time out.

This also switches to using `scaledRandomIntBetween` for the number of
fields.
[TESTS] Log what the _default_ template is in ElasticsearchIntegrationTest
[TEST] wait unitl all machines joined the cluster