Skip to content

Commit 9af9d6f

Browse files
authored
Mention missing files in corruption troubleshooting docs (#103962) (#103968)
These docs talk about files whose contents are unexpected, but we should also mention that files which are completely missing are also going to be due to infrastructural problems.
1 parent b979928 commit 9af9d6f

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

docs/reference/troubleshooting/corruption-issues.asciidoc

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,20 @@ well-tested, so you can be very confident that a checksum mismatch really does
3838
indicate that the data read from disk is different from the data that {es}
3939
previously wrote.
4040

41+
It is also possible that {es} reports a corruption if a file it needs is
42+
entirely missing, with an exception such as:
43+
44+
- `java.io.FileNotFoundException`
45+
- `java.nio.file.NoSuchFileException`
46+
4147
The files that make up a Lucene index are written in full before they are used.
4248
If a file is needed to recover an index after a restart then your storage
4349
system previously confirmed to {es} that this file was durably synced to disk.
4450
On Linux this means that the `fsync()` system call returned successfully. {es}
4551
sometimes reports that an index is corrupt because a file needed for recovery
46-
has been truncated or is missing its footer. This indicates that your storage
47-
system acknowledges durable writes incorrectly.
52+
is missing, or it exists but has been truncated or is missing its footer. This
53+
indicates that your storage system acknowledges durable writes incorrectly or
54+
that some external process has modified the data {es} previously wrote to disk.
4855

4956
There are many possible explanations for {es} detecting corruption in your
5057
cluster. Databases like {es} generate a challenging I/O workload that may find

0 commit comments

Comments
 (0)