Update repeatedly outputs the same changes

Every time I run beet update, I get the same list of changes. I’ve copied and diffed the output to verify–it’s the same every time. I have over 2200 lines of changes like the following:

Bruce Springsteen - Greatest Hits - Glory Days
  albumartist: Al Green -> Bruce Springsteen
  genre: R&B/Soul -> Rock
  year: 1973 -> 1984
  month: 04 -> 06
  day: 01 -> 04

It appears that beets originally imported the files incorrectly, and is trying to fix the problem. Am I correct in assuming that beets is having trouble saving the changes to the DB? Any suggestions to fix it?

When I run update with triple verbose output, I don’t see any messages regarding trouble saving:

Bruce Springsteen - Greatest Hits - Glory Days
  albumartist: Al Green -> Bruce Springsteen
  genre: R&B/Soul -> Rock
  year: 1973 -> 1984
  month: 04 -> 06
  day: 01 -> 04
Sending event: before_item_moved
Sending event: item_moved
Sending event: database_change
Sending event: database_change
Sending event: database_change

Other info:

  • I’m running beets in a FreeBSD jail on a FreeNAS server
  • The database file itself is writable, and is getting updated: -rwxrwxrwx+ 1 beets beets 7208960 Jan 19 12:33 beetslib.db

Thanks!

I think the most likely explanation here is that one track on the album has different metadata from the remaining tracks. By default, beets thinks these album-level attributes should not vary across tracks, so after the update these non-uniformities get overridden.

Maybe a beet write on this one album would help eliminate the infinite loop?

@adrian thanks for the suggestion. Apologies for the noob question, but how do I determine what files to beet write? If I run beet info "glory days", I don’t see anything tagged as Al Green, R&B/Soul, etc:

$ beet info "glory days"
/mnt/Beethoven/Music/Library/Bruce Springsteen/Greatest Hits [1975]/10 Glory Days.flac
     album: Greatest Hits
       art: False
    artist: Bruce Springsteen
  bitdepth: 16
   bitrate: 1022945
  channels: 2
  composer: Bruce Springsteen
      date: 1984-01-01
      disc: 1
 disctotal: 1
   encoder: X Lossless Decoder 20181019
    format: FLAC
     genre: Rock
    genres: Rock
    length: 229.16
samplerate: 44100
     title: Glory Days
     track: 10
tracktotal: 18
      year: 1984

/mnt/Beethoven/Music/Library/Compilations/Greatest Hits [595]/10 Glory Days.m4p
        album: Greatest Hits
  albumartist: Bruce Springsteen
          art: True
       artist: Bruce Springsteen
  artist_sort: Bruce Springsteen
     bitdepth: 16
      bitrate: 134314
     channels: 2
         comp: True
     composer: Bruce Springsteen
         date: 1984-06-04
          day: 4
         disc: 1
    disctotal: 1
       format: AAC
        genre: Rock
       genres: Rock
       length: 228.06639455782312
        month: 6
rg_track_gain: -7.06
rg_track_peak: 0.999969
   samplerate: 44100
        title: Glory Days
        track: 10
   tracktotal: 18
         year: 1984

Thank you!

If I were you, I’d try beet write -a on the whole album? Maybe making a backup first just in case things go wrong…

Thanks. I backed up my files, and ran beet write on the entire library. Now I’m not getting any repeating messages when I beet update.

2 Likes