|
@ -2,7 +2,6 @@ package storage |
|
|
|
|
|
|
|
|
import ( |
|
|
import ( |
|
|
"fmt" |
|
|
"fmt" |
|
|
"io/ioutil" |
|
|
|
|
|
"os" |
|
|
"os" |
|
|
"sync" |
|
|
"sync" |
|
|
|
|
|
|
|
@ -31,8 +30,6 @@ type NeedleMapper interface { |
|
|
DeletedCount() int |
|
|
DeletedCount() int |
|
|
MaxFileKey() NeedleId |
|
|
MaxFileKey() NeedleId |
|
|
IndexFileSize() uint64 |
|
|
IndexFileSize() uint64 |
|
|
IndexFileContent() ([]byte, error) |
|
|
|
|
|
IndexFileName() string |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
type baseNeedleMapper struct { |
|
|
type baseNeedleMapper struct { |
|
@ -50,10 +47,6 @@ func (nm *baseNeedleMapper) IndexFileSize() uint64 { |
|
|
return 0 |
|
|
return 0 |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
func (nm *baseNeedleMapper) IndexFileName() string { |
|
|
|
|
|
return nm.indexFile.Name() |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func (nm *baseNeedleMapper) appendToIndexFile(key NeedleId, offset Offset, size uint32) error { |
|
|
func (nm *baseNeedleMapper) appendToIndexFile(key NeedleId, offset Offset, size uint32) error { |
|
|
bytes := needle_map.ToBytes(key, offset, size) |
|
|
bytes := needle_map.ToBytes(key, offset, size) |
|
|
|
|
|
|
|
@ -66,9 +59,3 @@ func (nm *baseNeedleMapper) appendToIndexFile(key NeedleId, offset Offset, size |
|
|
_, err := nm.indexFile.Write(bytes) |
|
|
_, err := nm.indexFile.Write(bytes) |
|
|
return err |
|
|
return err |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
func (nm *baseNeedleMapper) IndexFileContent() ([]byte, error) { |
|
|
|
|
|
nm.indexFileAccessLock.Lock() |
|
|
|
|
|
defer nm.indexFileAccessLock.Unlock() |
|
|
|
|
|
return ioutil.ReadFile(nm.indexFile.Name()) |
|
|
|
|
|
} |
|
|
|