diff options
| author | Chris Lu <chris.lu@gmail.com> | 2014-03-10 11:43:54 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2014-03-10 11:43:54 -0700 |
| commit | cd10c277b2146a7d01449dfe8825e7f1f12d7d7d (patch) | |
| tree | 3f9bb75988e50aa2ddfc492fd45d27c6a748680f /go/storage/volume.go | |
| parent | a121453188f14ac3580bf61b47268bf029d61390 (diff) | |
| download | seaweedfs-cd10c277b2146a7d01449dfe8825e7f1f12d7d7d.tar.xz seaweedfs-cd10c277b2146a7d01449dfe8825e7f1f12d7d7d.zip | |
can now delete a collection! Is this a dangerous feature? Only enabling
deleting "benchmark" collections for now.
Diffstat (limited to 'go/storage/volume.go')
| -rw-r--r-- | go/storage/volume.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/go/storage/volume.go b/go/storage/volume.go index 69817a6d4..0301d7968 100644 --- a/go/storage/volume.go +++ b/go/storage/volume.go @@ -197,6 +197,21 @@ func (v *Volume) isFileUnchanged(n *Needle) bool { } return false } + +func (v *Volume) Destroy() (err error) { + if v.readOnly { + err = fmt.Errorf("%s is read-only", v.dataFile) + return + } + v.Close() + err = os.Remove(v.dataFile.Name()) + if err != nil { + return + } + err = v.nm.Destroy() + return +} + func (v *Volume) write(n *Needle) (size uint32, err error) { if v.readOnly { err = fmt.Errorf("%s is read-only", v.dataFile) |
