This system encountered a RAID disk failure. After the disk was replaced, errors like this have been observed on several indices in the cluster. The array reports no further errors and appears to have been rebuilt.
This seems very similar to https://github.com/elastic/elasticsearch/issues/11520 as well as https://github.com/elastic/elasticsearch/issues/7238.
What, if any, options do I have to restore the system and recover the data?
Elasticsearch will not even start as a result. This is on a data-only node; but similar errors are observed on the master as well. I've also seen these errors prior to this as CorruptIndexExceptions; I'm in this situation beacuse I thought restarting might allow elastic to recover the data.
2016-10-04 16:16:59,266 [INFO ][node ] [eshost-2] version[1.7.5], pid[9864], build[00f95f4/2016-02-02T09:55:30Z]
2016-10-04 16:16:59,266 [INFO ][node ] [eshost-2] initializing ...
2016-10-04 16:16:59,348 [INFO ][env ] [eshost-2] using [1] data paths, mounts [[/var/lib/elasticsearch (/dev/sda)]], net usable_space [11tb], net total_space [29tb], types [xfs]
2016-10-04 16:17:01,164 [ERROR][gateway.local.state.shards] [eshost-2] failed to read local state (started shards), exiting...
org.elasticsearch.ElasticsearchException: codec footer mismatch: actual footer=0 vs expected footer=-1071082520 (resource: BufferedChecksumIndexInput(SimpleFSIndexInput(path="/var/lib/elasticsearch/customer/nodes/0/indices/.datastats-customer-2016.09.26/2/_state/state-3.st")))
at org.elasticsearch.ExceptionsHelper.maybeThrowRuntimeAndSuppress(ExceptionsHelper.java:153)
at org.elasticsearch.gateway.local.state.meta.MetaDataStateFormat.loadLatestState(MetaDataStateFormat.java:297)
....
Caused by: org.elasticsearch.gateway.local.state.meta.CorruptStateException: codec footer mismatch: actual
footer=0 vs expected footer=-1071082520 (resource: BufferedChecksumIndexInput(SimpleFSIndexInput(path="/var/lib/elasticsearch/customer/nodes/0/indices/.datastats-customer-2016.09.26/2/_state/state-3.st")))
....
And it continues similarly until it reaches
2016-10-04 16:17:01,227 [ERROR][bootstrap ] Exception
org.elasticsearch.common.inject.CreationException: Guice creation errors:
1) Error injecting constructor, org.elasticsearch.ElasticsearchException: codec footer mismatch: actual footer=0 vs expected footer=-1071082520 (resource: BufferedChecksumIndexInput(SimpleFSIndexInput(path="/var/lib/elasticsearch/customer/nodes/0/indices/.datastats-customer-2016.09.26/2/_state/state-3.st")))
Any ideas? Is there a guide for recovering from catastrophic failures anywhere?