Skip to content

Commit 00cb735

Browse files
committed
Swap to go.etcd.io/bbolt/errors for bbolt errors
Signed-off-by: Austin Vazquez <[email protected]>
1 parent 4d36c2d commit 00cb735

File tree

10 files changed

+28
-18
lines changed

10 files changed

+28
-18
lines changed

core/metadata/bolt.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"fmt"
2222

2323
bolt "go.etcd.io/bbolt"
24+
errbolt "go.etcd.io/bbolt/errors"
2425
)
2526

2627
type transactionKey struct{}
@@ -56,7 +57,7 @@ func update(ctx context.Context, db Transactor, fn func(*bolt.Tx) error) error {
5657
if !ok {
5758
return db.Update(fn)
5859
} else if !tx.Writable() {
59-
return fmt.Errorf("unable to use transaction from context: %w", bolt.ErrTxNotWritable)
60+
return fmt.Errorf("unable to use transaction from context: %w", errbolt.ErrTxNotWritable)
6061
}
6162
return fn(tx)
6263
}

core/metadata/containers.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import (
3535
"github.com/containerd/errdefs"
3636
"github.com/containerd/typeurl/v2"
3737
bolt "go.etcd.io/bbolt"
38+
errbolt "go.etcd.io/bbolt/errors"
3839
)
3940

4041
const (
@@ -143,7 +144,7 @@ func (s *containerStore) Create(ctx context.Context, container containers.Contai
143144

144145
cbkt, err := bkt.CreateBucket([]byte(container.ID))
145146
if err != nil {
146-
if err == bolt.ErrBucketExists {
147+
if err == errbolt.ErrBucketExists {
147148
err = fmt.Errorf("container %q: %w", container.ID, errdefs.ErrAlreadyExists)
148149
}
149150
return err
@@ -294,7 +295,7 @@ func (s *containerStore) Delete(ctx context.Context, id string) error {
294295
}
295296

296297
if err := bkt.DeleteBucket([]byte(id)); err != nil {
297-
if err == bolt.ErrBucketNotFound {
298+
if err == errbolt.ErrBucketNotFound {
298299
err = fmt.Errorf("container %v: %w", id, errdefs.ErrNotFound)
299300
}
300301
return err

core/metadata/content.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import (
3131
digest "github.com/opencontainers/go-digest"
3232
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
3333
bolt "go.etcd.io/bbolt"
34+
errbolt "go.etcd.io/bbolt/errors"
3435

3536
"github.com/containerd/containerd/v2/core/content"
3637
"github.com/containerd/containerd/v2/core/metadata/boltutil"
@@ -609,7 +610,7 @@ func (nw *namespacedWriter) Commit(ctx context.Context, size int64, expected dig
609610
}
610611
bkt := getIngestsBucket(tx, nw.namespace)
611612
if bkt != nil {
612-
if err := bkt.DeleteBucket([]byte(nw.ref)); err != nil && err != bolt.ErrBucketNotFound {
613+
if err := bkt.DeleteBucket([]byte(nw.ref)); err != nil && err != errbolt.ErrBucketNotFound {
613614
return err
614615
}
615616
}
@@ -678,7 +679,7 @@ func (nw *namespacedWriter) commit(ctx context.Context, tx *bolt.Tx, size int64,
678679

679680
bkt, err := createBlobBucket(tx, nw.namespace, actual)
680681
if err != nil {
681-
if err == bolt.ErrBucketExists {
682+
if err == errbolt.ErrBucketExists {
682683
return actual, fmt.Errorf("content %v: %w", actual, errdefs.ErrAlreadyExists)
683684
}
684685
return "", err

core/metadata/images.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import (
3636
digest "github.com/opencontainers/go-digest"
3737
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
3838
bolt "go.etcd.io/bbolt"
39+
errbolt "go.etcd.io/bbolt/errors"
3940
)
4041

4142
type imageStore struct {
@@ -143,7 +144,7 @@ func (s *imageStore) Create(ctx context.Context, image images.Image) (images.Ima
143144

144145
ibkt, err := bkt.CreateBucket([]byte(image.Name))
145146
if err != nil {
146-
if err != bolt.ErrBucketExists {
147+
if err != errbolt.ErrBucketExists {
147148
return err
148149
}
149150

@@ -319,7 +320,7 @@ func (s *imageStore) Delete(ctx context.Context, name string, opts ...images.Del
319320
}
320321

321322
if err = bkt.DeleteBucket([]byte(name)); err != nil {
322-
if err == bolt.ErrBucketNotFound {
323+
if err == errbolt.ErrBucketNotFound {
323324
err = fmt.Errorf("image %q: %w", name, errdefs.ErrNotFound)
324325
}
325326
return err

core/metadata/leases.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import (
3131
"github.com/containerd/errdefs"
3232
digest "github.com/opencontainers/go-digest"
3333
bolt "go.etcd.io/bbolt"
34+
errbolt "go.etcd.io/bbolt/errors"
3435
)
3536

3637
// leaseManager manages the create/delete lifecycle of leases
@@ -72,7 +73,7 @@ func (lm *leaseManager) Create(ctx context.Context, opts ...leases.Opt) (leases.
7273

7374
txbkt, err := topbkt.CreateBucket([]byte(l.ID))
7475
if err != nil {
75-
if err == bolt.ErrBucketExists {
76+
if err == errbolt.ErrBucketExists {
7677
err = errdefs.ErrAlreadyExists
7778
}
7879
return fmt.Errorf("lease %q: %w", l.ID, err)
@@ -114,7 +115,7 @@ func (lm *leaseManager) Delete(ctx context.Context, lease leases.Lease, _ ...lea
114115
return fmt.Errorf("lease %q: %w", lease.ID, errdefs.ErrNotFound)
115116
}
116117
if err := topbkt.DeleteBucket([]byte(lease.ID)); err != nil {
117-
if err == bolt.ErrBucketNotFound {
118+
if err == errbolt.ErrBucketNotFound {
118119
err = fmt.Errorf("lease %q: %w", lease.ID, errdefs.ErrNotFound)
119120
}
120121
return err

core/metadata/namespaces.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import (
2626
"github.com/containerd/containerd/v2/pkg/namespaces"
2727
"github.com/containerd/errdefs"
2828
bolt "go.etcd.io/bbolt"
29+
errbolt "go.etcd.io/bbolt/errors"
2930
)
3031

3132
type namespaceStore struct {
@@ -56,7 +57,7 @@ func (s *namespaceStore) Create(ctx context.Context, namespace string, labels ma
5657
// provides the already exists error.
5758
bkt, err := topbkt.CreateBucket([]byte(namespace))
5859
if err != nil {
59-
if err == bolt.ErrBucketExists {
60+
if err == errbolt.ErrBucketExists {
6061
return fmt.Errorf("namespace %q: %w", namespace, errdefs.ErrAlreadyExists)
6162
}
6263

@@ -155,7 +156,7 @@ func (s *namespaceStore) Delete(ctx context.Context, namespace string, opts ...n
155156
}
156157

157158
if err := bkt.DeleteBucket([]byte(namespace)); err != nil {
158-
if err == bolt.ErrBucketNotFound {
159+
if err == errbolt.ErrBucketNotFound {
159160
return fmt.Errorf("namespace %q: %w", namespace, errdefs.ErrNotFound)
160161
}
161162

core/metadata/sandbox.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import (
3232
"github.com/containerd/errdefs"
3333
"github.com/containerd/typeurl/v2"
3434
"go.etcd.io/bbolt"
35+
errbolt "go.etcd.io/bbolt/errors"
3536
)
3637

3738
const (
@@ -266,7 +267,7 @@ func (s *sandboxStore) Delete(ctx context.Context, id string) error {
266267
}
267268

268269
if err := buckets.DeleteBucket([]byte(id)); err != nil {
269-
if err == bbolt.ErrBucketNotFound {
270+
if err == errbolt.ErrBucketNotFound {
270271
err = errdefs.ErrNotFound
271272
}
272273
return fmt.Errorf("failed to delete sandbox %q: %w", id, err)
@@ -299,7 +300,7 @@ func (s *sandboxStore) write(parent *bbolt.Bucket, instance *api.Sandbox, overwr
299300
} else {
300301
bucket, err = parent.CreateBucket(id)
301302
if err != nil {
302-
if err == bbolt.ErrBucketExists {
303+
if err == errbolt.ErrBucketExists {
303304
return fmt.Errorf("sandbox bucket %q already exists: %w", instance.ID, errdefs.ErrAlreadyExists)
304305
}
305306
return err

core/metadata/snapshot.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import (
3434
"github.com/containerd/errdefs"
3535
"github.com/containerd/log"
3636
bolt "go.etcd.io/bbolt"
37+
errbolt "go.etcd.io/bbolt/errors"
3738
)
3839

3940
const (
@@ -456,7 +457,7 @@ func (s *snapshotter) createSnapshot(ctx context.Context, key, parent string, re
456457

457458
bbkt, err := bkt.CreateBucket([]byte(key))
458459
if err != nil {
459-
if err != bolt.ErrBucketExists {
460+
if err != errbolt.ErrBucketExists {
460461
return err
461462
}
462463
if rerr == nil {
@@ -555,7 +556,7 @@ func (s *snapshotter) Commit(ctx context.Context, name, key string, opts ...snap
555556
}
556557
bbkt, err := bkt.CreateBucket([]byte(name))
557558
if err != nil {
558-
if err == bolt.ErrBucketExists {
559+
if err == errbolt.ErrBucketExists {
559560
rerr = fmt.Errorf("snapshot %q: %w", name, errdefs.ErrAlreadyExists)
560561
return nil
561562
}

core/snapshots/storage/bolt.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import (
3030
"github.com/containerd/containerd/v2/pkg/filters"
3131
"github.com/containerd/errdefs"
3232
bolt "go.etcd.io/bbolt"
33+
errbolt "go.etcd.io/bbolt/errors"
3334
)
3435

3536
var (
@@ -242,7 +243,7 @@ func CreateSnapshot(ctx context.Context, kind snapshots.Kind, key, parent string
242243
}
243244
sbkt, err := bkt.CreateBucket([]byte(key))
244245
if err != nil {
245-
if err == bolt.ErrBucketExists {
246+
if err == errbolt.ErrBucketExists {
246247
err = fmt.Errorf("snapshot %v: %w", key, errdefs.ErrAlreadyExists)
247248
}
248249
return err
@@ -360,7 +361,7 @@ func CommitActive(ctx context.Context, key, name string, usage snapshots.Usage,
360361
if err := withBucket(ctx, func(ctx context.Context, bkt, pbkt *bolt.Bucket) error {
361362
dbkt, err := bkt.CreateBucket([]byte(name))
362363
if err != nil {
363-
if err == bolt.ErrBucketExists {
364+
if err == errbolt.ErrBucketExists {
364365
err = errdefs.ErrAlreadyExists
365366
}
366367
return fmt.Errorf("committed snapshot %v: %w", name, err)

plugins/snapshots/devmapper/metadata.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727

2828
"github.com/containerd/errdefs"
2929
bolt "go.etcd.io/bbolt"
30+
errbolt "go.etcd.io/bbolt/errors"
3031
)
3132

3233
type (
@@ -329,7 +330,7 @@ func (m *PoolMetadata) GetDeviceNames(ctx context.Context) ([]string, error) {
329330

330331
// Close closes metadata store
331332
func (m *PoolMetadata) Close() error {
332-
if err := m.db.Close(); err != nil && err != bolt.ErrDatabaseNotOpen {
333+
if err := m.db.Close(); err != nil && err != errbolt.ErrDatabaseNotOpen {
333334
return err
334335
}
335336

0 commit comments

Comments
 (0)