[
https://issues.apache.org/jira/browse/LUCENE-8048?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Erick Erickson updated LUCENE-8048:
-----------------------------------
Attachment: Screen Shot 2017-11-22 at 12.34.51 PM.png
> Filesystems do not guarantee order of directories updates
> ---------------------------------------------------------
>
> Key: LUCENE-8048
> URL: https://issues.apache.org/jira/browse/LUCENE-8048
> Project: Lucene - Core
> Issue Type: Bug
> Reporter: Nikolay Martynov
> Attachments: LUCENE-8048.patch, Screen Shot 2017-11-22 at 12.34.51
> PM.png
>
>
> Currently when index is written to disk the following sequence of events is
> taking place:
> * write segment file
> * sync segment file
> * write segment file
> * sync segment file
> ...
> * write list of segments
> * sync list of segments
> * rename list of segments
> * sync index directory
> This sequence leads to potential window of opportunity for system to crash
> after 'rename list of segments' but before 'sync index directory' and
> depending on exact filesystem implementation this may potentially lead to
> 'list of segments' being visible in directory while some of the segments are
> not.
> Solution to this is to sync index directory after all segments have been
> written. [This
> commit|https://github.com/mar-kolya/lucene-solr/commit/58e05dd1f633ab9b02d9e6374c7fab59689ae71c]
> shows idea implemented. I'm fairly certain that I didn't find all the places
> this may be potentially happening.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]