Skip to content

Log filled with Caused by: java.io.IOException: No space left on device errors on data drive free space consumption #20354

@b1naryth1ef

Description

@b1naryth1ef

Elasticsearch version: 2.3.2

Plugins installed: []

JVM version: Java(TM) SE Runtime Environment (build 1.8.0_72-b15)

OS version: Ubuntu 14.04.5 LTS (3.19.0-59-generic)

Description of the problem including expected versus actual behavior:

Just had our data drive run out of space on a 1-node elastic instance which caused the logging partition to be filled by a 28GB log file (~300 million lines), filled solely with this repeating section:

Caused by: java.io.IOException: No space left on device
        at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
        at sun.nio.ch.FileDispatcherImpl.write(FileDispatcherImpl.java:60)
        at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
        at sun.nio.ch.IOUtil.write(IOUtil.java:65)
        at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:211)
        at java.nio.channels.Channels.writeFullyImpl(Channels.java:78)
        at java.nio.channels.Channels.writeFully(Channels.java:101)
        at java.nio.channels.Channels.access$000(Channels.java:61)
        at java.nio.channels.Channels$1.write(Channels.java:174)
        at org.apache.lucene.store.FSDirectory$FSIndexOutput$1.write(FSDirectory.java:278)
        at java.util.zip.CheckedOutputStream.write(CheckedOutputStream.java:73)
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
        at java.io.BufferedOutputStream.write(BufferedOutputStream.java:95)
        at org.apache.lucene.store.OutputStreamIndexOutput.writeByte(OutputStreamIndexOutput.java:47)
        at org.apache.lucene.store.RateLimitedIndexOutput.writeByte(RateLimitedIndexOutput.java:66)
        at org.apache.lucene.codecs.compressing.LZ4.encodeSequence(LZ4.java:176)
        at org.apache.lucene.codecs.compressing.LZ4.compress(LZ4.java:243)
        at org.apache.lucene.codecs.compressing.CompressionMode$LZ4FastCompressor.compress(CompressionMode.java:164)
        at org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter.flush(CompressingStoredFieldsWriter.java:236)
        at org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter.finishDocument(CompressingStoredFieldsWriter.java:163)
        at org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter.merge(CompressingStoredFieldsWriter.java:605)
        at org.apache.lucene.index.SegmentMerger.mergeFields(SegmentMerger.java:177)
        at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:83)
        at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4075)
        at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3655)
        ... 3 more
        Suppressed: java.io.IOException: No space left on device
                at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
                at sun.nio.ch.FileDispatcherImpl.write(FileDispatcherImpl.java:60)
                at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
                at sun.nio.ch.IOUtil.write(IOUtil.java:65)
                at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:211)
                at java.nio.channels.Channels.writeFullyImpl(Channels.java:78)
                at java.nio.channels.Channels.writeFully(Channels.java:101)
                at java.nio.channels.Channels.access$000(Channels.java:61)
                at java.nio.channels.Channels$1.write(Channels.java:174)
                at org.apache.lucene.store.FSDirectory$FSIndexOutput$1.write(FSDirectory.java:278)
                at java.util.zip.CheckedOutputStream.write(CheckedOutputStream.java:73)
                at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
                at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
                at org.apache.lucene.store.OutputStreamIndexOutput.close(OutputStreamIndexOutput.java:68)
                at org.apache.lucene.store.RateLimitedIndexOutput.close(RateLimitedIndexOutput.java:49)
                at org.apache.lucene.util.IOUtils.close(IOUtils.java:97)
                at org.apache.lucene.util.IOUtils.close(IOUtils.java:84)
                at org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter.close(CompressingStoredFieldsWriter.java:138)
                at org.apache.lucene.index.SegmentMerger.mergeFields(SegmentMerger.java:178)
                ... 6 more
                Suppressed: java.io.IOException: No space left on d

We've had this instances data drive fill up before without this issue being raised.

Steps to reproduce:

  1. Let elasticsearch fill up a drive
  2. Cry

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions