Move internal#CantPerformQuery() to database#CantPerformQuery()

This commit is contained in:
Eric Lippmann 2024-05-21 11:47:05 +02:00
parent 7b537661ee
commit 43685e4131
6 changed files with 23 additions and 20 deletions

View file

@ -25,11 +25,6 @@ func CantParseUint64(err error, s string) error {
return errors.Wrapf(err, "can't parse %q into uint64", s)
}
// CantPerformQuery wraps the given error with the specified query that cannot be executed.
func CantPerformQuery(err error, q string) error {
return errors.Wrapf(err, "can't perform %q", q)
}
// CantUnmarshalYAML wraps the given error with the designated value, which cannot be unmarshalled into.
func CantUnmarshalYAML(err error, v interface{}) error {
return errors.Wrapf(err, "can't unmarshal YAML into %T", v)

8
pkg/database/utils.go Normal file
View file

@ -0,0 +1,8 @@
package database
import "github.com/pkg/errors"
// CantPerformQuery wraps the given error with the specified query that cannot be executed.
func CantPerformQuery(err error, q string) error {
return errors.Wrapf(err, "can't perform %q", q)
}

View file

@ -3,9 +3,9 @@ package icingadb
import (
"context"
"fmt"
"github.com/icinga/icingadb/internal"
"github.com/icinga/icingadb/pkg/backoff"
"github.com/icinga/icingadb/pkg/com"
"github.com/icinga/icingadb/pkg/database"
"github.com/icinga/icingadb/pkg/retry"
"github.com/icinga/icingadb/pkg/types"
"time"
@ -58,7 +58,7 @@ func (db *DB) CleanupOlderThan(
Time: types.UnixMilli(olderThan),
})
if err != nil {
return internal.CantPerformQuery(err, q)
return database.CantPerformQuery(err, q)
}
rowsDeleted, err = rs.RowsAffected()

View file

@ -3,10 +3,10 @@ package icingadb
import (
"context"
"fmt"
"github.com/icinga/icingadb/internal"
"github.com/icinga/icingadb/pkg/backoff"
"github.com/icinga/icingadb/pkg/com"
"github.com/icinga/icingadb/pkg/contracts"
"github.com/icinga/icingadb/pkg/database"
"github.com/icinga/icingadb/pkg/logging"
"github.com/icinga/icingadb/pkg/periodic"
"github.com/icinga/icingadb/pkg/retry"
@ -116,7 +116,7 @@ func (db *DB) CheckSchema(ctx context.Context) error {
query := "SELECT version FROM icingadb_schema ORDER BY id DESC LIMIT 1"
err = db.QueryRowxContext(ctx, query).Scan(&version)
if err != nil {
err = internal.CantPerformQuery(err, query)
err = database.CantPerformQuery(err, query)
}
return
},
@ -344,7 +344,7 @@ func (db *DB) BulkExec(
stmt = db.Rebind(stmt)
_, err = db.ExecContext(ctx, stmt, args...)
if err != nil {
return internal.CantPerformQuery(err, query)
return database.CantPerformQuery(err, query)
}
counter.Add(uint64(len(b)))
@ -409,7 +409,7 @@ func (db *DB) NamedBulkExec(
func(ctx context.Context) error {
_, err := db.NamedExecContext(ctx, query, b)
if err != nil {
return internal.CantPerformQuery(err, query)
return database.CantPerformQuery(err, query)
}
counter.Add(uint64(len(b)))
@ -535,7 +535,7 @@ func (db *DB) YieldAll(ctx context.Context, factoryFunc contracts.EntityFactoryF
rows, err := db.NamedQueryContext(ctx, query, scope)
if err != nil {
return internal.CantPerformQuery(err, query)
return database.CantPerformQuery(err, query)
}
defer rows.Close()

View file

@ -6,9 +6,9 @@ import (
"database/sql"
"encoding/hex"
"github.com/google/uuid"
"github.com/icinga/icingadb/internal"
"github.com/icinga/icingadb/pkg/backoff"
"github.com/icinga/icingadb/pkg/com"
"github.com/icinga/icingadb/pkg/database"
v1 "github.com/icinga/icingadb/pkg/icingadb/v1"
"github.com/icinga/icingadb/pkg/icingaredis"
icingaredisv1 "github.com/icinga/icingadb/pkg/icingaredis/v1"
@ -338,7 +338,7 @@ func (h *HA) realize(
}
default:
return internal.CantPerformQuery(errQuery, query)
return database.CantPerformQuery(errQuery, query)
}
i := v1.IcingadbInstance{
@ -365,7 +365,7 @@ func (h *HA) realize(
stmt, _ := h.db.BuildUpsertStmt(i)
if _, err := tx.NamedExecContext(ctx, stmt, i); err != nil {
return internal.CantPerformQuery(err, stmt)
return database.CantPerformQuery(err, stmt)
}
if takeover != "" {
@ -373,7 +373,7 @@ func (h *HA) realize(
_, err := tx.ExecContext(ctx, stmt, "n", envId, h.instanceId)
if err != nil {
return internal.CantPerformQuery(err, stmt)
return database.CantPerformQuery(err, stmt)
}
}
@ -441,7 +441,7 @@ func (h *HA) realize(
func (h *HA) realizeLostHeartbeat() {
stmt := h.db.Rebind("UPDATE icingadb_instance SET responsible = ? WHERE id = ?")
if _, err := h.db.ExecContext(h.ctx, stmt, "n", h.instanceId); err != nil && !utils.IsContextCanceled(err) {
h.logger.Warnw("Can't update instance", zap.Error(internal.CantPerformQuery(err, stmt)))
h.logger.Warnw("Can't update instance", zap.Error(database.CantPerformQuery(err, stmt)))
}
}
@ -451,7 +451,7 @@ func (h *HA) insertEnvironment() error {
stmt, _ := h.db.BuildInsertIgnoreStmt(h.environment)
if _, err := h.db.NamedExecContext(h.ctx, stmt, h.environment); err != nil {
return internal.CantPerformQuery(err, stmt)
return database.CantPerformQuery(err, stmt)
}
return nil

View file

@ -5,9 +5,9 @@ import (
_ "embed"
"fmt"
"github.com/google/uuid"
"github.com/icinga/icingadb/internal"
"github.com/icinga/icingadb/pkg/com"
"github.com/icinga/icingadb/pkg/contracts"
"github.com/icinga/icingadb/pkg/database"
"github.com/icinga/icingadb/pkg/icingadb"
"github.com/icinga/icingadb/pkg/icingadb/v1"
"github.com/icinga/icingadb/pkg/icingadb/v1/overdue"
@ -89,7 +89,7 @@ func (s Sync) initSync(ctx context.Context, objectType string) error {
query := fmt.Sprintf("SELECT id FROM %s_state WHERE is_overdue='y'", objectType)
if err := s.db.SelectContext(ctx, &rows, query); err != nil {
return internal.CantPerformQuery(err, query)
return database.CantPerformQuery(err, query)
}
_, err := s.redis.Pipelined(ctx, func(pipe redis.Pipeliner) error {