refactor: wrap bare errors with context in database package
This commit is contained in:
@@ -60,7 +60,10 @@ func RunMigrations(sqlDB *sql.DB) error {
|
||||
}
|
||||
func RunMigrationsAndFixes(sqlDB *sql.DB) error {
|
||||
if err := RunMigrations(sqlDB); err != nil {
|
||||
return err
|
||||
return fmt.Errorf("run migrations: %w", err)
|
||||
}
|
||||
return RunDataFixes(sqlDB)
|
||||
if err := RunDataFixes(sqlDB); err != nil {
|
||||
return fmt.Errorf("run data fixes: %w", err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -21,12 +21,12 @@ func RunDataFixes(sqlDB *sql.DB) error {
|
||||
}
|
||||
|
||||
if err := ensureDataFixTable(ctx, sqlDB); err != nil {
|
||||
return err
|
||||
return fmt.Errorf("ensure data fix table: %w", err)
|
||||
}
|
||||
|
||||
applied, err := loadAppliedFixes(ctx, sqlDB)
|
||||
if err != nil {
|
||||
return err
|
||||
return fmt.Errorf("load applied data fixes: %w", err)
|
||||
}
|
||||
|
||||
for _, fix := range fixes {
|
||||
@@ -46,7 +46,7 @@ func RunDataFixes(sqlDB *sql.DB) error {
|
||||
return fmt.Errorf("data fix %s failed: %w", fix.ID, err)
|
||||
}
|
||||
if err := markFixApplied(ctx, sqlDB, fix.ID); err != nil {
|
||||
return err
|
||||
return fmt.Errorf("mark data fix %s applied: %w", fix.ID, err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ func init() {
|
||||
Apply: func(ctx context.Context, sqlDB *sql.DB) error {
|
||||
rows, err := sqlDB.QueryContext(ctx, `SELECT id, username FROM user WHERE avatar_url = ''`)
|
||||
if err != nil {
|
||||
return err
|
||||
return fmt.Errorf("query users missing avatar_url: %w", err)
|
||||
}
|
||||
defer func() { _ = rows.Close() }()
|
||||
|
||||
@@ -25,12 +25,12 @@ func init() {
|
||||
for rows.Next() {
|
||||
var r userRow
|
||||
if err := rows.Scan(&r.id, &r.username); err != nil {
|
||||
return err
|
||||
return fmt.Errorf("scan user missing avatar_url: %w", err)
|
||||
}
|
||||
toUpdate = append(toUpdate, r)
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return err
|
||||
return fmt.Errorf("iterate users missing avatar_url: %w", err)
|
||||
}
|
||||
|
||||
for _, u := range toUpdate {
|
||||
|
||||
@@ -25,7 +25,7 @@ func init() {
|
||||
func applyAnimeDurationSecondsBackfill(ctx context.Context, sqlDB *sql.DB) error {
|
||||
toUpdate, err := listAnimeMissingDurationSeconds(ctx, sqlDB)
|
||||
if err != nil {
|
||||
return err
|
||||
return fmt.Errorf("list anime missing duration_seconds: %w", err)
|
||||
}
|
||||
|
||||
client := jikan.NewClient(config.Config{}, db.New(sqlDB), observability.NewMetrics())
|
||||
|
||||
Reference in New Issue
Block a user