wait for reading threads to complete before dropping sealed chunks

This commit is contained in:
chrislu
2022-01-17 22:24:44 -08:00
parent 0a3f95ca01
commit f4ad63528a
15 changed files with 106 additions and 1086 deletions

View File

@@ -21,6 +21,10 @@ type MemoryChunkPages struct {
hasWrites bool
}
var (
_ = page_writer.DirtyPages(&MemoryChunkPages{})
)
func newMemoryChunkPages(fh *FileHandle, chunkSize int64) *MemoryChunkPages {
dirtyPages := &MemoryChunkPages{
@@ -88,3 +92,10 @@ func (pages *MemoryChunkPages) saveChunkedFileIntevalToStorage(reader io.Reader,
func (pages MemoryChunkPages) Destroy() {
pages.uploadPipeline.Shutdown()
}
func (pages *MemoryChunkPages) LockForRead(startOffset, stopOffset int64) {
pages.uploadPipeline.LockForRead(startOffset, stopOffset)
}
func (pages *MemoryChunkPages) UnlockForRead(startOffset, stopOffset int64) {
pages.uploadPipeline.UnlockForRead(startOffset, stopOffset)
}