SQL: close rows to release connection (#97147)

* SQL: close rows to release connection

* dont return err from rows.Close()
This commit is contained in:
Matheus Macabu 2024-11-28 14:28:55 +01:00 committed by GitHub
parent 0bf9d68070
commit f2b96593ea
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 25 additions and 4 deletions

View File

@ -42,6 +42,9 @@ func GetAccessPolicies(ctx context.Context, orgID int64, sql *session.SessionDB,
if err != nil { if err != nil {
return nil, err return nil, err
} }
defer func() {
_ = rows.Close()
}()
created := time.Now() created := time.Now()
updated := time.Now() updated := time.Now()

View File

@ -222,6 +222,11 @@ func (s *sqlStore) ListAll(ctx context.Context, orgId int64) ([]playlist.Playlis
if err != nil { if err != nil {
return nil, err return nil, err
} }
defer func() {
_ = rows.Close()
}()
for rows.Next() { for rows.Next() {
err = rows.Scan(&playlistId, &itemType, &itemValue) err = rows.Scan(&playlistId, &itemType, &itemValue)
if err != nil { if err != nil {

View File

@ -29,6 +29,11 @@ func (s *StandardDocumentBuilders) GetDocumentBuilders() ([]resource.DocumentBui
if err != nil { if err != nil {
return nil, err return nil, err
} }
defer func() {
_ = rows.Close()
}()
for rows.Next() { for rows.Next() {
info := &dashboard.DatasourceQueryResult{} info := &dashboard.DatasourceQueryResult{}
err = rows.Scan(&info.UID, &info.Type, &info.Name, &info.IsDefault) err = rows.Scan(&info.UID, &info.Type, &info.Name, &info.IsDefault)

View File

@ -146,6 +146,11 @@ func (b *backend) Namespaces(ctx context.Context) ([]string, error) {
if err != nil { if err != nil {
return err return err
} }
defer func() {
_ = rows.Close()
}()
for rows.Next() { for rows.Next() {
var ns string var ns string
err = rows.Scan(&ns) err = rows.Scan(&ns)
@ -155,8 +160,7 @@ func (b *backend) Namespaces(ctx context.Context) ([]string, error) {
namespaces = append(namespaces, ns) namespaces = append(namespaces, ns)
} }
err = rows.Close() return nil
return err
}) })
return namespaces, err return namespaces, err
@ -679,7 +683,7 @@ func (b *backend) poll(ctx context.Context, grp string, res string, since int64,
nextRV = rec.ResourceVersion nextRV = rec.ResourceVersion
prevRV := rec.PreviousRV prevRV := rec.PreviousRV
if prevRV == nil { if prevRV == nil {
*prevRV = int64(0) prevRV = new(int64)
} }
stream <- &resource.WrittenEvent{ stream <- &resource.WrittenEvent{
WriteEvent: resource.WriteEvent{ WriteEvent: resource.WriteEvent{

View File

@ -165,6 +165,10 @@ func Query[T any](ctx context.Context, x db.ContextExecer, tmpl *template.Templa
return nil, err return nil, err
} }
defer func() {
_ = rows.Close()
}()
var ret []T var ret []T
for rows.Next() { for rows.Next() {
v, err := scanRow(rows, req) v, err := scanRow(rows, req)

View File

@ -101,7 +101,7 @@ func (r *sqlResourceHistoryPollRequest) Validate() error {
func (r *sqlResourceHistoryPollRequest) Results() (*historyPollResponse, error) { func (r *sqlResourceHistoryPollRequest) Results() (*historyPollResponse, error) {
prevRV := r.Response.PreviousRV prevRV := r.Response.PreviousRV
if prevRV == nil { if prevRV == nil {
*prevRV = int64(0) prevRV = new(int64)
} }
return &historyPollResponse{ return &historyPollResponse{
Key: resource.ResourceKey{ Key: resource.ResourceKey{