@@ -145,7 +145,16 @@ func (b *Bucket) openBucket(value []byte) *Bucket {
145
145
// CreateBucket creates a new bucket at the given key and returns the new bucket.
146
146
// Returns an error if the key already exists, if the bucket name is blank, or if the bucket name is too long.
147
147
// The bucket instance is only valid for the lifetime of the transaction.
148
- func (b * Bucket ) CreateBucket (key []byte ) (* Bucket , error ) {
148
+ func (b * Bucket ) CreateBucket (key []byte ) (rb * Bucket , err error ) {
149
+ lg := b .tx .db .Logger ()
150
+ lg .Debugf ("Creating bucket %q" , string (key ))
151
+ defer func () {
152
+ if err != nil {
153
+ lg .Errorf ("Creating bucket %q failed: %v" , string (key ), err )
154
+ } else {
155
+ lg .Debugf ("Creating bucket %q successfully" , string (key ))
156
+ }
157
+ }()
149
158
if b .tx .db == nil {
150
159
return nil , errors .ErrTxClosed
151
160
} else if ! b .tx .writable {
@@ -192,7 +201,17 @@ func (b *Bucket) CreateBucket(key []byte) (*Bucket, error) {
192
201
// CreateBucketIfNotExists creates a new bucket if it doesn't already exist and returns a reference to it.
193
202
// Returns an error if the bucket name is blank, or if the bucket name is too long.
194
203
// The bucket instance is only valid for the lifetime of the transaction.
195
- func (b * Bucket ) CreateBucketIfNotExists (key []byte ) (* Bucket , error ) {
204
+ func (b * Bucket ) CreateBucketIfNotExists (key []byte ) (rb * Bucket , err error ) {
205
+ lg := b .tx .db .Logger ()
206
+ lg .Debugf ("Creating bucket if not exist %q" , string (key ))
207
+ defer func () {
208
+ if err != nil {
209
+ lg .Errorf ("Creating bucket if not exist %q failed: %v" , string (key ), err )
210
+ } else {
211
+ lg .Debugf ("Creating bucket if not exist %q successfully" , string (key ))
212
+ }
213
+ }()
214
+
196
215
if b .tx .db == nil {
197
216
return nil , errors .ErrTxClosed
198
217
} else if ! b .tx .writable {
@@ -249,7 +268,17 @@ func (b *Bucket) CreateBucketIfNotExists(key []byte) (*Bucket, error) {
249
268
250
269
// DeleteBucket deletes a bucket at the given key.
251
270
// Returns an error if the bucket does not exist, or if the key represents a non-bucket value.
252
- func (b * Bucket ) DeleteBucket (key []byte ) error {
271
+ func (b * Bucket ) DeleteBucket (key []byte ) (err error ) {
272
+ lg := b .tx .db .Logger ()
273
+ lg .Debugf ("Deleting bucket %q" , string (key ))
274
+ defer func () {
275
+ if err != nil {
276
+ lg .Errorf ("Deleting bucket %q failed: %v" , string (key ), err )
277
+ } else {
278
+ lg .Debugf ("Deleting bucket %q successfully" , string (key ))
279
+ }
280
+ }()
281
+
253
282
if b .tx .db == nil {
254
283
return errors .ErrTxClosed
255
284
} else if ! b .Writable () {
@@ -269,7 +298,7 @@ func (b *Bucket) DeleteBucket(key []byte) error {
269
298
270
299
// Recursively delete all child buckets.
271
300
child := b .Bucket (key )
272
- err : = child .ForEachBucket (func (k []byte ) error {
301
+ err = child .ForEachBucket (func (k []byte ) error {
273
302
if err := child .DeleteBucket (k ); err != nil {
274
303
return fmt .Errorf ("delete bucket: %s" , err )
275
304
}
@@ -316,7 +345,16 @@ func (b *Bucket) Get(key []byte) []byte {
316
345
// If the key exist then its previous value will be overwritten.
317
346
// Supplied value must remain valid for the life of the transaction.
318
347
// Returns an error if the bucket was created from a read-only transaction, if the key is blank, if the key is too large, or if the value is too large.
319
- func (b * Bucket ) Put (key []byte , value []byte ) error {
348
+ func (b * Bucket ) Put (key []byte , value []byte ) (err error ) {
349
+ lg := b .tx .db .Logger ()
350
+ lg .Debugf ("Putting key %q" , string (key ))
351
+ defer func () {
352
+ if err != nil {
353
+ lg .Errorf ("Putting key %q failed: %v" , string (key ), err )
354
+ } else {
355
+ lg .Debugf ("Putting key %q successfully" , string (key ))
356
+ }
357
+ }()
320
358
if b .tx .db == nil {
321
359
return errors .ErrTxClosed
322
360
} else if ! b .Writable () {
@@ -353,7 +391,17 @@ func (b *Bucket) Put(key []byte, value []byte) error {
353
391
// Delete removes a key from the bucket.
354
392
// If the key does not exist then nothing is done and a nil error is returned.
355
393
// Returns an error if the bucket was created from a read-only transaction.
356
- func (b * Bucket ) Delete (key []byte ) error {
394
+ func (b * Bucket ) Delete (key []byte ) (err error ) {
395
+ lg := b .tx .db .Logger ()
396
+ lg .Debugf ("Deleting key %q" , string (key ))
397
+ defer func () {
398
+ if err != nil {
399
+ lg .Errorf ("Deleting key %q failed: %v" , string (key ), err )
400
+ } else {
401
+ lg .Debugf ("Deleting key %q successfully" , string (key ))
402
+ }
403
+ }()
404
+
357
405
if b .tx .db == nil {
358
406
return errors .ErrTxClosed
359
407
} else if ! b .Writable () {
0 commit comments