- Lucene index is organized during commit phase - relatively heavy operation
- Lucene does not have built-in transaction log capabilities
- Change made between two commit operations is lost in case of a failure
- To minimize data loss each shard uses write ahead log or transaction log
- In case of crash recent operations can be replayed back to Lucene index
- Flush is performing Lucene commit and is starting new transaction log in the background
- Flush and transaction log settings are configured in elasticsearch.yml