fix for batch posting to unavailable slice

This commit is contained in:
Todd Gruben 2014-01-23 11:44:21 -06:00
parent 7d897c1cf7
commit cf721020fb
2 changed files with 10 additions and 6 deletions

View file

@ -38,13 +38,15 @@ func (self *Service) Batch(database_name, frame, compressed_bitmap string, bitma
oslice := database.GetOrCreateSlice(slice)
//need to find processid and fragment id for that slice
fragment, _ := database.GetFragmentForBitmap(oslice, &db.Bitmap{bitmap_id, frame})
id := uuid.RandomUUID()
batch := db.Message{Data: BatchRequest{Id: &id, Source: self.Id, Fragment_id: fragment.GetId(), Bitmap_id: bitmap_id, Compressed_bitmap: compressed_bitmap}}
dest_id := fragment.GetProcess().Id()
self.Transport.Send(&batch, &dest_id)
fragment, err := database.GetFragmentForBitmap(oslice, &db.Bitmap{bitmap_id, frame})
if err == nil {
id := uuid.RandomUUID()
batch := db.Message{Data: BatchRequest{Id: &id, Source: self.Id, Fragment_id: fragment.GetId(), Bitmap_id: bitmap_id, Compressed_bitmap: compressed_bitmap}}
dest_id := fragment.GetProcess().Id()
self.Transport.Send(&batch, &dest_id)
_, err := self.Hold.Get(&id, 60)
_, err := self.Hold.Get(&id, 60)
}
return err
}

View file

@ -151,6 +151,8 @@ func TestFragment(t *testing.T) {
Convey("store ", t, func() {
b := uint64(1029)
compressed := "H4sIAAAJbogA/2JmYRBQ+9/IzMjI6pxRmpfN+L+JgZGJkdk7tZKRjYGRNSwxpzSV8X8LAwOD8v9moDIup5z85GzHoqLESpAwI1AjWITxfxtQjdT/VqAIV7SxUWxpZl6JmQlImJGN0YGB4R+j+v8mJkaFH/8h4B+M8X+UgcwAhZTm/yZgMCLCarC4bbAxYGHFNBpWBBmwsGIeDSuCDFhYsYyGFUEGLKxYR8OKIAMWVmyjYUWQwcDwfyYwqNgHLKjk4Q7BBAAAAAD//wEAAP//QNipzzcJAAA="
// compressed := "H4sIAAAJbogA/2JmYWBS+9/IzMjI6pxRmpfN+L+JgZGJkdk7tZKRjYGRNSwxpzSV8X8LAwOD8v9moDIup5z85GzHoqLESpAwI1AjWITxfxtQjdT/VqAIV7SxUWxpZl6JmQlImJGN0YGBweN/E+M/RgdGRoUf/6EAk/GbGUQy4AUAAAAA//8BAAD//2vjG9ezAAAA"
dummy.LoadBitmap(brand, b, compressed)
bh1, _ := dummy.Get(brand, b)
before, _ := dummy.Count(brand, bh1)