aboutsummaryrefslogtreecommitdiff
path: root/weed-fs/src/pkg
diff options
context:
space:
mode:
authorchris.lu@gmail.com <chris.lu@gmail.com@282b0af5-e82d-9cf1-ede4-77906d7719d0>2011-12-26 09:58:07 +0000
committerchris.lu@gmail.com <chris.lu@gmail.com@282b0af5-e82d-9cf1-ede4-77906d7719d0>2011-12-26 09:58:07 +0000
commitc27f6175d70008ec1e75ab3635329bc608b7ffa2 (patch)
tree9aa879b6a18ac60582e13ba517581d2ba1bc4cb7 /weed-fs/src/pkg
parent6913fabc640fe24b180dbbbb2bfd7193e93d71f9 (diff)
downloadseaweedfs-c27f6175d70008ec1e75ab3635329bc608b7ffa2.tar.xz
seaweedfs-c27f6175d70008ec1e75ab3635329bc608b7ffa2.zip
update volume status on each heartbeat
git-svn-id: https://weed-fs.googlecode.com/svn/trunk@26 282b0af5-e82d-9cf1-ede4-77906d7719d0
Diffstat (limited to 'weed-fs/src/pkg')
-rw-r--r--weed-fs/src/pkg/directory/volume_mapping.go11
1 files changed, 5 insertions, 6 deletions
diff --git a/weed-fs/src/pkg/directory/volume_mapping.go b/weed-fs/src/pkg/directory/volume_mapping.go
index a4cce21df..b5bac8505 100644
--- a/weed-fs/src/pkg/directory/volume_mapping.go
+++ b/weed-fs/src/pkg/directory/volume_mapping.go
@@ -91,6 +91,8 @@ func (m *Mapper) Add(machine Machine){
if machineId < 0 {
machineId = len(m.Machines)
m.Machines = append(m.Machines, &machine)
+ }else{
+ m.Machines[machineId] = &machine
}
m.lock.Unlock()
@@ -98,20 +100,17 @@ func (m *Mapper) Add(machine Machine){
for _, v := range machine.Volumes {
//log.Println("Setting volume", v.Id, "to", machine.Server.Url)
m.vid2machineId[v.Id] = machineId
- if v.Size < ChunkSizeLimit {
- m.Writers = append(m.Writers, machineId)
- }
}
//setting Writers, copy-on-write because of possible updating
- var Writers []int
+ var writers []int
for machine_index, machine_entry := range m.Machines {
for _, v := range machine_entry.Volumes {
if v.Size < ChunkSizeLimit {
- Writers = append(Writers, machine_index)
+ writers = append(writers, machine_index)
}
}
}
- m.Writers = Writers
+ m.Writers = writers
}
func (m *Mapper) saveSequence() {
log.Println("Saving file id sequence", m.FileIdSequence, "to", path.Join(m.dir, m.fileName+".seq"))