mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
search: close unused reader and writer on re-indexing (#49458)
This commit is contained in:
parent
5eb20739c2
commit
1e7e149ed6
@ -235,6 +235,12 @@ func (i *dashboardIndex) buildOrgIndex(ctx context.Context, orgID int64) (int, e
|
|||||||
"orgSearchDashboardCount", len(dashboards))
|
"orgSearchDashboardCount", len(dashboards))
|
||||||
|
|
||||||
i.mu.Lock()
|
i.mu.Lock()
|
||||||
|
if oldReader, ok := i.perOrgReader[orgID]; ok {
|
||||||
|
_ = oldReader.Close()
|
||||||
|
}
|
||||||
|
if oldWriter, ok := i.perOrgWriter[orgID]; ok {
|
||||||
|
_ = oldWriter.Close()
|
||||||
|
}
|
||||||
i.perOrgReader[orgID] = reader
|
i.perOrgReader[orgID] = reader
|
||||||
i.perOrgWriter[orgID] = writer
|
i.perOrgWriter[orgID] = writer
|
||||||
i.mu.Unlock()
|
i.mu.Unlock()
|
||||||
@ -347,6 +353,7 @@ func (i *dashboardIndex) applyDashboardEvent(ctx context.Context, orgID int64, d
|
|||||||
// Skip event for org not yet fully indexed.
|
// Skip event for org not yet fully indexed.
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
// TODO: should we release index lock while performing removeDashboard/updateDashboard?
|
||||||
reader, ok := i.perOrgReader[orgID]
|
reader, ok := i.perOrgReader[orgID]
|
||||||
if !ok {
|
if !ok {
|
||||||
// Skip event for org not yet fully indexed.
|
// Skip event for org not yet fully indexed.
|
||||||
@ -364,6 +371,7 @@ func (i *dashboardIndex) applyDashboardEvent(ctx context.Context, orgID int64, d
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
_ = reader.Close()
|
||||||
i.perOrgReader[orgID] = newReader
|
i.perOrgReader[orgID] = newReader
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user