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

Christopher Tubbs updated ACCUMULO-4078:
----------------------------------------
    Description: 
A few improvements to the {{VolumeChooser}} are desired for a use case that 
seems general enough to warrant an update to Accumulo.  

*Use Case:*
A new volume is added, with limited capacity, to be dedicated for a specific 
table.  All other tables or files should be excluded from this new volume.

*Suggested Improvements:*
# Update the signature for {{VolumeManager.choose}} to take a 
{{VolumeChooserEnvironment}} instead of {{Optional<String>}}.  This will allow 
future parameters for volume selection without repeatedly changing the 
{{VolumeManager}} interface.
# It's not currently possible to specify preferred volumes for the write-ahead 
logs
# In several places including {{PreferredVolumeChooser}}, 
{{PerTableVolumeChooser}} and {{VolumeManagerImpl}}, the failsafe chooser is 
the {{RandomVolumeChooser}} which will include the instance volume that needs 
to be excluded.  It would be useful to have a configurable failsafe in this 
situation.
# The volume chooser is called in {{FileUtils}} for temp directory creation but 
it could instead use the sticky dir to create the temp directory, not needing 
the volume chooser at all.

The above suggestions could become sub-tickets.  Note that the improvements 
listed have been implemented for my particular instance and I hope to submit 
them as a patch.

  was:
A few improvements to the VolumeChooser are desired for a use case that seems 
general enough to warrant an update to Accumulo.  

Use Case:
A new volume is added, with limited capacity, to be dedicated for a specific 
table.  All other tables or files should be excluded from this new volume.

Suggested Improvements:
1. Update the signature for VolumeManager.choose to take a 
VolumeChooserEnvironment instead of Optional<String>.  This will allow future 
parameters for volume selection without repeatedly changing the VolumeManager 
interface.

2. It's not currently possible to specify preferred volumes for the write-ahead 
logs

3. In several places including PreferredVolumeChooser, PerTableVolumeChooser 
and VolumeManagerImpl, the failsafe chooser is the RandomVolumeChooser which 
will include the instance volume that needs to be excluded.  It would be useful 
to have a configurable failsafe in this situation.

4. The volume chooser is called in FileUtils for temp directory creation but it 
could instead use the sticky dir to create the temp directory, not needing the 
volume chooser at all.

The above suggestions could become sub-tickets.  Note that the improvements 
listed have been implemented for my particular instance and I hope to submit 
them as a patch.


> Exclude special volumes
> -----------------------
>
>                 Key: ACCUMULO-4078
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-4078
>             Project: Accumulo
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.7.0
>            Reporter: Matt Peterson
>            Priority: Minor
>              Labels: newbie
>             Fix For: 1.8.0
>
>
> A few improvements to the {{VolumeChooser}} are desired for a use case that 
> seems general enough to warrant an update to Accumulo.  
> *Use Case:*
> A new volume is added, with limited capacity, to be dedicated for a specific 
> table.  All other tables or files should be excluded from this new volume.
> *Suggested Improvements:*
> # Update the signature for {{VolumeManager.choose}} to take a 
> {{VolumeChooserEnvironment}} instead of {{Optional<String>}}.  This will 
> allow future parameters for volume selection without repeatedly changing the 
> {{VolumeManager}} interface.
> # It's not currently possible to specify preferred volumes for the 
> write-ahead logs
> # In several places including {{PreferredVolumeChooser}}, 
> {{PerTableVolumeChooser}} and {{VolumeManagerImpl}}, the failsafe chooser is 
> the {{RandomVolumeChooser}} which will include the instance volume that needs 
> to be excluded.  It would be useful to have a configurable failsafe in this 
> situation.
> # The volume chooser is called in {{FileUtils}} for temp directory creation 
> but it could instead use the sticky dir to create the temp directory, not 
> needing the volume chooser at all.
> The above suggestions could become sub-tickets.  Note that the improvements 
> listed have been implemented for my particular instance and I hope to submit 
> them as a patch.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to