[
https://issues.apache.org/jira/browse/SOLR-9091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15276878#comment-15276878
]
Hrishikesh Gadre commented on SOLR-9091:
----------------------------------------
Another problem is that following code will throw an NPE if
"backupIndexFileChecksum" parameter is NULL (which is possible when the
checksum is not available in the calling method).
https://github.com/apache/lucene-solr/blob/7571e747c3506ee93d63c9bd3534254944b5caa7/solr/core/src/java/org/apache/solr/handler/IndexFetcher.java#L922
> Solr index restore silently copies the corrupt segments in the backup
> ---------------------------------------------------------------------
>
> Key: SOLR-9091
> URL: https://issues.apache.org/jira/browse/SOLR-9091
> Project: Solr
> Issue Type: Bug
> Reporter: Hrishikesh Gadre
>
> The Solr core restore functionality uses following criteria to decide if a
> given file is copied from backup directory or from current index directory.
> case 1] File is available in both backup and current index directory
> --> Compare the checksum and file length
> --> If checksum and length matching, copy the file from current working
> directory.
> --> If the checksum and length doesn't match, copy the file from backup
> directory.
> case 2] File is available in only in backup directory (This can happen for a
> newly created core without any data).
> --> Copy the file from backup directory.
> Now the problem here is that we intentionally catch and ignore the error
> while reading the checksum for a file in the backup directory. Hence in case
> (2), it will result into restoration of a file without appropriate "checksum".
> Here is the relevant code snippet,
> https://github.com/apache/lucene-solr/blob/a5586d29b23f7d032e6d8f0cf8758e56b09e0208/solr/core/src/java/org/apache/solr/handler/RestoreCore.java#L82-L95
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]