diff options
-rw-r--r-- | pkg/database/sql/media.go | 4 | ||||
-rw-r--r-- | pkg/worker/scanner/exif_scanner.go | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/pkg/database/sql/media.go b/pkg/database/sql/media.go index 4b48608..b13e267 100644 --- a/pkg/database/sql/media.go +++ b/pkg/database/sql/media.go @@ -43,8 +43,8 @@ type ( MediaThumbnail struct { gorm.Model - Path string `gorm:"not null;unique"` - MediaID uint `gorm:"not null"` + Path string + MediaID uint `gorm:"not null"` Media Media } diff --git a/pkg/worker/scanner/exif_scanner.go b/pkg/worker/scanner/exif_scanner.go index da63c0b..c265223 100644 --- a/pkg/worker/scanner/exif_scanner.go +++ b/pkg/worker/scanner/exif_scanner.go @@ -30,6 +30,10 @@ func (e *EXIFScanner) Query(ctx context.Context) ([]*repository.Media, error) { }) } +func (t *EXIFScanner) OnFail(ctx context.Context, media *repository.Media, _ error) { + _ = t.repository.CreateEXIF(ctx, media.ID, &repository.MediaEXIF{}) +} + func (e *EXIFScanner) Process(ctx context.Context, m *repository.Media) error { exif, err := coroutine.WrapProcess(ctx, func() (*repository.MediaEXIF, error) { return fileop.ReadExif(m.Path) }) if err != nil { |