diff options
| author | chris.lu@gmail.com <chris.lu@gmail.com@282b0af5-e82d-9cf1-ede4-77906d7719d0> | 2011-12-26 09:58:07 +0000 |
|---|---|---|
| committer | chris.lu@gmail.com <chris.lu@gmail.com@282b0af5-e82d-9cf1-ede4-77906d7719d0> | 2011-12-26 09:58:07 +0000 |
| commit | c27f6175d70008ec1e75ab3635329bc608b7ffa2 (patch) | |
| tree | 9aa879b6a18ac60582e13ba517581d2ba1bc4cb7 /weed-fs/src/pkg | |
| parent | 6913fabc640fe24b180dbbbb2bfd7193e93d71f9 (diff) | |
| download | seaweedfs-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.go | 11 |
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")) |
