diff --git a/core/cube/cube-api/go-api/server.go b/core/cube/cube-api/go-api/server.go index 1cde8c7ef156097b12aa9732c5d1ac272c6e5444..2c6c81d3c0009de6fcfcd57c73feff134d7b3b73 100644 --- a/core/cube/cube-api/go-api/server.go +++ b/core/cube/cube-api/go-api/server.go @@ -39,14 +39,14 @@ func (server *CubeServer) SplitKeys(keys []uint64) (splited_keys map[uint64]Inpu splited_keys = make(map[uint64]Input) offset = make(map[uint64][]uint64) - for _, key := range keys { + for i, key := range keys { shard_id := key % server.Shard temp_split, _ := splited_keys[shard_id] temp_split.Keys = append(temp_split.Keys, key) splited_keys[shard_id] = temp_split temp_offset, _ := offset[shard_id] - temp_offset = append(temp_offset, key) + temp_offset = append(temp_offset, uint64(i)) offset[shard_id] = temp_offset } @@ -73,9 +73,7 @@ func (server *CubeServer) Seek(input string, output_path string) (err error) { key_nums := len(temp_input.Keys) var output Output output.Values = make([]SingleValue, key_nums+1) - splited_keys, offset := server.SplitKeys(temp_input.Keys) - for shard_id, keys := range splited_keys { cur_output, _ := server.Post(shard_id, keys) for index, single_value := range cur_output.Values {