@@ -458,31 +458,34 @@ func (b *Bucket) createIndexes(ctx context.Context) error {
458
458
459
459
docRes := cloned .FindOne (ctx , bsonx.Doc {}, options .FindOne ().SetProjection (bsonx.Doc {{"_id" , bsonx .Int32 (1 )}}))
460
460
461
- err = docRes .Err ()
462
- if err == mongo .ErrNoDocuments {
463
- filesIv := b .filesColl .Indexes ()
464
- chunksIv := b .chunksColl .Indexes ()
465
-
466
- filesModel := mongo.IndexModel {
467
- Keys : bson.D {
468
- {"filename" , int32 (1 )},
469
- {"uploadDate" , int32 (1 )},
470
- },
471
- }
461
+ _ , err = docRes .DecodeBytes ()
462
+ if err != mongo .ErrNoDocuments {
463
+ // nil, or error that occured during the FindOne operation
464
+ return err
465
+ }
472
466
473
- chunksModel := mongo.IndexModel {
474
- Keys : bson.D {
475
- {"files_id" , int32 (1 )},
476
- {"n" , int32 (1 )},
477
- },
478
- }
467
+ filesIv := b .filesColl .Indexes ()
468
+ chunksIv := b .chunksColl .Indexes ()
479
469
480
- if err = createIndexIfNotExists (ctx , filesIv , filesModel ); err != nil {
481
- return err
482
- }
483
- if err = createIndexIfNotExists (ctx , chunksIv , chunksModel ); err != nil {
484
- return err
485
- }
470
+ filesModel := mongo.IndexModel {
471
+ Keys : bson.D {
472
+ {"filename" , int32 (1 )},
473
+ {"uploadDate" , int32 (1 )},
474
+ },
475
+ }
476
+
477
+ chunksModel := mongo.IndexModel {
478
+ Keys : bson.D {
479
+ {"files_id" , int32 (1 )},
480
+ {"n" , int32 (1 )},
481
+ },
482
+ }
483
+
484
+ if err = createIndexIfNotExists (ctx , filesIv , filesModel ); err != nil {
485
+ return err
486
+ }
487
+ if err = createIndexIfNotExists (ctx , chunksIv , chunksModel ); err != nil {
488
+ return err
486
489
}
487
490
488
491
return nil
0 commit comments