add more for volume placement

fix possible nil volume cases
This commit is contained in:
Chris Lu
2012-08-27 13:52:02 -07:00
parent c72f10511a
commit 2dceb44ae4
6 changed files with 68 additions and 24 deletions

View File

@@ -89,11 +89,23 @@ func (s *Store) Close() {
}
}
func (s *Store) Write(i VolumeId, n *Needle) uint32 {
return s.volumes[i].write(n)
v := s.volumes[i]
if v!=nil{
return v.write(n)
}
return 0
}
func (s *Store) Delete(i VolumeId, n *Needle) uint32 {
return s.volumes[i].delete(n)
v := s.volumes[i]
if v!=nil{
return v.delete(n)
}
return 0
}
func (s *Store) Read(i VolumeId, n *Needle) (int, error) {
return s.volumes[i].read(n)
v := s.volumes[i]
if v!=nil{
return v.read(n)
}
return 0, errors.New("Not Found")
}