Skip to content

Commit 56214a3

Browse files
committed
vecindex: remove Begin/Commit/Abort Transaction methods
Remove the BeginTransaction, CommitTransaction, and AbortTransaction methods from the cspann.Store interface. These methods are superseded by the RunTransaction method. Fix up all test usages of any of these methods to use a new commontest.RunTransaction helper function. Epic: CRDB-42943 Release note: None
1 parent 13866fc commit 56214a3

File tree

10 files changed

+599
-689
lines changed

10 files changed

+599
-689
lines changed

pkg/cmd/vecbench/mem_provider.go

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -128,34 +128,27 @@ func (m *MemProvider) InsertVectors(
128128
func (m *MemProvider) Search(
129129
ctx context.Context, vec vector.T, maxResults int, beamSize int, stats *cspann.SearchStats,
130130
) (keys []cspann.KeyBytes, err error) {
131-
var txn cspann.Txn
132-
txn, err = m.store.BeginTransaction(ctx)
133-
defer func() {
134-
if err == nil {
135-
err = m.store.CommitTransaction(ctx, txn)
136-
}
131+
err = m.store.RunTransaction(ctx, func(txn cspann.Txn) error {
132+
// Search the store.
133+
var idxCtx cspann.Context
134+
idxCtx.Init(txn)
135+
searchSet := cspann.SearchSet{MaxResults: maxResults}
136+
searchOptions := cspann.SearchOptions{BaseBeamSize: beamSize}
137+
err = m.index.Search(ctx, &idxCtx, nil /* treeKey */, vec, &searchSet, searchOptions)
137138
if err != nil {
138-
err = m.store.AbortTransaction(ctx, txn)
139+
return err
139140
}
140-
}()
141-
142-
// Search the store.
143-
var idxCtx cspann.Context
144-
idxCtx.Init(txn)
145-
searchSet := cspann.SearchSet{MaxResults: maxResults}
146-
searchOptions := cspann.SearchOptions{BaseBeamSize: beamSize}
147-
err = m.index.Search(ctx, &idxCtx, nil /* treeKey */, vec, &searchSet, searchOptions)
148-
if err != nil {
149-
return nil, err
150-
}
151-
*stats = searchSet.Stats
141+
*stats = searchSet.Stats
152142

153-
// Get result keys.
154-
results := searchSet.PopResults()
155-
keys = make([]cspann.KeyBytes, len(results))
156-
for i, res := range results {
157-
keys[i] = []byte(res.ChildKey.KeyBytes)
158-
}
143+
// Get result keys.
144+
results := searchSet.PopResults()
145+
keys = make([]cspann.KeyBytes, len(results))
146+
for i, res := range results {
147+
keys[i] = []byte(res.ChildKey.KeyBytes)
148+
}
149+
150+
return nil
151+
})
159152

160153
return keys, err
161154
}

0 commit comments

Comments
 (0)