From 49fa2bdd6d3cc48e91f705681ee1c4e0dbcdf31d Mon Sep 17 00:00:00 2001 From: Tom Clegg Date: Wed, 22 Nov 2017 09:57:21 -0500 Subject: [PATCH] 12483: Drop writableSegment interface. Arvados-DCO-1.1-Signed-off-by: Tom Clegg --- sdk/go/arvados/collection_fs.go | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/sdk/go/arvados/collection_fs.go b/sdk/go/arvados/collection_fs.go index 2e38adcb4d..586569fde5 100644 --- a/sdk/go/arvados/collection_fs.go +++ b/sdk/go/arvados/collection_fs.go @@ -331,12 +331,12 @@ func (fn *filenode) truncate(size int64) error { } for size > fn.fileinfo.size { grow := size - fn.fileinfo.size - var seg writableSegment + var seg *memSegment var ok bool if len(fn.segments) == 0 { seg = &memSegment{} fn.segments = append(fn.segments, seg) - } else if seg, ok = fn.segments[len(fn.segments)-1].(writableSegment); !ok || seg.Len() >= maxBlockSize { + } else if seg, ok = fn.segments[len(fn.segments)-1].(*memSegment); !ok || seg.Len() >= maxBlockSize { seg = &memSegment{} fn.segments = append(fn.segments, seg) } @@ -375,11 +375,11 @@ func (fn *filenode) Write(p []byte, startPtr filenodePtr) (n int, ptr filenodePt prev := ptr.segmentIdx - 1 var curWritable bool if cur < len(fn.segments) { - _, curWritable = fn.segments[cur].(writableSegment) + _, curWritable = fn.segments[cur].(*memSegment) } var prevAppendable bool if prev >= 0 && fn.segments[prev].Len() < maxBlockSize { - _, prevAppendable = fn.segments[prev].(writableSegment) + _, prevAppendable = fn.segments[prev].(*memSegment) } if ptr.segmentOff > 0 && !curWritable { // Split a non-writable block. @@ -444,7 +444,7 @@ func (fn *filenode) Write(p []byte, startPtr filenodePtr) (n int, ptr filenodePt // Grow prev. ptr.segmentIdx-- ptr.segmentOff = fn.segments[prev].Len() - fn.segments[prev].(writableSegment).Truncate(ptr.segmentOff + len(cando)) + fn.segments[prev].(*memSegment).Truncate(ptr.segmentOff + len(cando)) fn.memsize += int64(len(cando)) ptr.repacked++ fn.repacked++ @@ -470,7 +470,7 @@ func (fn *filenode) Write(p []byte, startPtr filenodePtr) (n int, ptr filenodePt } // Finally we can copy bytes from cando to the current segment. - fn.segments[ptr.segmentIdx].(writableSegment).WriteAt(cando, ptr.segmentOff) + fn.segments[ptr.segmentIdx].(*memSegment).WriteAt(cando, ptr.segmentOff) n += len(cando) p = p[len(cando):] @@ -1261,12 +1261,6 @@ type segment interface { Slice(off int, length int) segment } -type writableSegment interface { - segment - WriteAt(p []byte, off int) - Truncate(n int) -} - type memSegment struct { buf []byte } -- 2.30.2