mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-09-12 15:51:01 +00:00
Merge pull request #853 from kuba--/fix-translate_index_keys
Fix translation index keys
This commit is contained in:
commit
dd4ffff704
2 changed files with 14 additions and 12 deletions
16
cluster.go
16
cluster.go
|
|
@ -2368,7 +2368,7 @@ func (c *cluster) translateFieldKeys(ctx context.Context, field *Field, keys []s
|
|||
if err == nil {
|
||||
return ids, nil
|
||||
}
|
||||
return ids, errors.Wrap(err, "translating keys on coordinator")
|
||||
return ids, errors.Wrap(err, "translating field keys on coordinator")
|
||||
}
|
||||
return ids, err
|
||||
}
|
||||
|
|
@ -2392,9 +2392,11 @@ func (c *cluster) translateIndexKeys(ctx context.Context, indexName string, keys
|
|||
return nil, err
|
||||
}
|
||||
|
||||
ids := make([]uint64, len(keys))
|
||||
for i := range keys {
|
||||
ids[i] = keyMap[keys[i]]
|
||||
ids := make([]uint64, 0, len(keys))
|
||||
for _, k := range keys {
|
||||
if id := keyMap[k]; id != 0 {
|
||||
ids = append(ids, id)
|
||||
}
|
||||
}
|
||||
return ids, nil
|
||||
}
|
||||
|
|
@ -2435,12 +2437,12 @@ func (c *cluster) translateIndexKeySet(ctx context.Context, indexName string, ke
|
|||
}
|
||||
|
||||
mu.Lock()
|
||||
defer mu.Unlock()
|
||||
for i := range keys {
|
||||
if id := ids[i]; id != 0 {
|
||||
for i, id := range ids {
|
||||
if id != 0 {
|
||||
keyMap[keys[i]] = id
|
||||
}
|
||||
}
|
||||
mu.Unlock()
|
||||
return nil
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -331,7 +331,7 @@ func TestTranslation_KeyNotFound(t *testing.T) {
|
|||
|
||||
node0 := c.GetNode(0)
|
||||
node1 := c.GetNode(1)
|
||||
node2 := c.GetNode(2)
|
||||
// node2 := c.GetNode(2)
|
||||
node3 := c.GetNode(3)
|
||||
|
||||
ctx := context.Background()
|
||||
|
|
@ -381,10 +381,10 @@ func TestTranslation_KeyNotFound(t *testing.T) {
|
|||
if err = node3.API.Serializer.Unmarshal(buf, &resp); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if resp.IDs != nil {
|
||||
t.Fatalf("TranslateKeys(%+v): expected: nil, got: %d", req, resp)
|
||||
t.Fatalf("TranslateKeys(%+v): expected: nil, got: %d", string(req), resp)
|
||||
}
|
||||
|
||||
req, err = node2.API.Serializer.Marshal(&pilosa.TranslateKeysRequest{
|
||||
req, err = node1.API.Serializer.Marshal(&pilosa.TranslateKeysRequest{
|
||||
Index: idx,
|
||||
Keys: []string{"k2"},
|
||||
NotWritable: true,
|
||||
|
|
@ -392,10 +392,10 @@ func TestTranslation_KeyNotFound(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if buf, err = node2.API.TranslateKeys(ctx, bytes.NewReader(req)); err != nil {
|
||||
if buf, err = node1.API.TranslateKeys(ctx, bytes.NewReader(req)); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err = node2.API.Serializer.Unmarshal(buf, &resp); err != nil {
|
||||
if err = node1.API.Serializer.Unmarshal(buf, &resp); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if resp.IDs != nil {
|
||||
t.Fatalf("TranslateKeys(%+v): expected: nil, got: %d", req, resp)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue