[ 
https://issues.apache.org/jira/browse/SOLR-17146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bruno Roustant updated SOLR-17146:
----------------------------------
    Description: 
Currently all BackupRepository copy methods systematically verify the checksum 
of the index file to copy before copying it to the repository.

This poses a problem when the file to copy cannot be verified with the standard 
Lucene checksum check. For example if the file was encrypted, the checkum would 
need to be verified in a different manner.

We propose to

1- Add an optional initialization argument to disable the checksum verification 
(enabled by default) in each BackupRepository implementation.

2- Introduce an abstract DelegatingBackupDirectory to extend when we need to 
perform different/additional logic on top of a delegate BackupDirectory. For 
example, verify the checksum differently. Also, the DelegatingBackupDirectory 
could inject some initialization arguments when the BackupRepositoryFactory 
creates its delegate.
Also make the existing TrackingBackupRepository (for tests) extend 
DelegatingBackupDirectory.

3- Add a test case to AbstractBackupRepositoryTest to ensure all 
implementations support disabling the checksum verification. And add a test for 
LocalFileSystemDirectory (not tested currently) that also extends 
AbstractBackupRepositoryTest.

  was:
Currently all BackupRepository copy methods systematically verify the checksum 
of the index file to copy before copying it to the repository.

This poses a problem when the file to copy cannot be verified with the standard 
Lucene checksum check. For example if the file was encrypted, the checkum would 
need to be verified in a different manner.

We propose to

1- Add an optional initialization argument to disable the checksum verification 
(enabled by default) in each BackupRepository implementation.

2- Introduce an abstract FilterBackupDirectory to extend when we need to 
perform different/additional logic on top of a delegate BackupDirectory. For 
example, verify the checksum differently. Also, the FilterBackupDirectory could 
inject some initialization arguments when the BackupRepositoryFactory creates 
its delegate.
Also make the existing TrackingBackupRepository (for tests) extend 
FilterBackupDirectory.

3- Add a test case to AbstractBackupRepositoryTest to ensure all 
implementations support disabling the checksum verification. And add a test for 
LocalFileSystemDirectory (not tested currently) that also extends 
AbstractBackupRepositoryTest.

        Summary: Add DelegatingBackupRepository and alternative checksum 
verification  (was: Add FilterBackupRepository and alternative checksum 
verification)

> Add DelegatingBackupRepository and alternative checksum verification
> --------------------------------------------------------------------
>
>                 Key: SOLR-17146
>                 URL: https://issues.apache.org/jira/browse/SOLR-17146
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>            Reporter: Bruno Roustant
>            Priority: Major
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> Currently all BackupRepository copy methods systematically verify the 
> checksum of the index file to copy before copying it to the repository.
> This poses a problem when the file to copy cannot be verified with the 
> standard Lucene checksum check. For example if the file was encrypted, the 
> checkum would need to be verified in a different manner.
> We propose to
> 1- Add an optional initialization argument to disable the checksum 
> verification (enabled by default) in each BackupRepository implementation.
> 2- Introduce an abstract DelegatingBackupDirectory to extend when we need to 
> perform different/additional logic on top of a delegate BackupDirectory. For 
> example, verify the checksum differently. Also, the DelegatingBackupDirectory 
> could inject some initialization arguments when the BackupRepositoryFactory 
> creates its delegate.
> Also make the existing TrackingBackupRepository (for tests) extend 
> DelegatingBackupDirectory.
> 3- Add a test case to AbstractBackupRepositoryTest to ensure all 
> implementations support disabling the checksum verification. And add a test 
> for LocalFileSystemDirectory (not tested currently) that also extends 
> AbstractBackupRepositoryTest.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to