unified-storage: add feature flag to use ngram for indexing (#111265)

* unified-storage: add feature flag to use ngram instead of edge-ngram for indexing
This commit is contained in:
Will Assis
2025-09-24 10:36:50 +02:00
committed by GitHub
parent 2669e0a770
commit 33ff6dbb9e
14 changed files with 317 additions and 172 deletions
@@ -20,6 +20,29 @@ func TestBleveSearchBackend(t *testing.T) {
backend, err := NewBleveBackend(BleveOptions{
Root: tempDir,
FileThreshold: 5,
UseFullNgram: false,
}, tracing.NewNoopTracerService(), nil)
require.NoError(t, err)
require.NotNil(t, backend)
t.Cleanup(backend.closeAllIndexes)
return backend
}, &unitest.TestOptions{
NSPrefix: "bleve-test",
})
}
func TestBleveSearchBackendFullNgramEnabled(t *testing.T) {
// Run the search backend test suite
unitest.RunSearchBackendTest(t, func(ctx context.Context) resource.SearchBackend {
tempDir := t.TempDir()
// Create a new bleve backend
backend, err := NewBleveBackend(BleveOptions{
Root: tempDir,
FileThreshold: 5,
UseFullNgram: true,
}, tracing.NewNoopTracerService(), nil)
require.NoError(t, err)
require.NotNil(t, backend)
@@ -44,7 +67,31 @@ func TestSearchBackendBenchmark(t *testing.T) {
// Create a new bleve backend
backend, err := NewBleveBackend(BleveOptions{
Root: tempDir,
Root: tempDir,
UseFullNgram: false,
}, tracing.NewNoopTracerService(), nil)
require.NoError(t, err)
require.NotNil(t, backend)
t.Cleanup(backend.closeAllIndexes)
unitest.BenchmarkSearchBackend(t, backend, opts)
}
func TestSearchBackendBenchmarkFullNgramEnabled(t *testing.T) {
opts := &unitest.BenchmarkOptions{
NumResources: 10000,
Concurrency: 1, // For now we only want to test the write throughput
NumNamespaces: 1,
NumGroups: 1,
NumResourceTypes: 1,
}
tempDir := t.TempDir()
// Create a new bleve backend
backend, err := NewBleveBackend(BleveOptions{
Root: tempDir,
UseFullNgram: true,
}, tracing.NewNoopTracerService(), nil)
require.NoError(t, err)
require.NotNil(t, backend)