Details
Description
The Lucene IndexWriter might delete an entire index if it hits a FileNotFoundException triggered by TooManyOpenFiles during IndexWriter creation. We try to figure out if the index exists already if the OpenMode.CREATE_OR_APPEND is set (which is default). Yet, the logic in DirectoryReader#indexExists(Directory) will just return false if we are not able to open the segment file. This will cause the IW to assume there is no index and it will try to create a new index there trashing all existing commit points treating this as a OpenMode.CREATE.