I explained this before.ZvezdanD wrote: ↑Fri Nov 25, 2022 11:04 amI am not sure that understand your mentioning of "break playlist criteria links when a user does some simple retagging" and "the JSON data in the source MM database would still be correct, but the ID has been broken". Could you please give a more detailed explanation or steps to reproduce?
My general observation is that you are taking great care to migrate something where MM5 itself does a poor job to keep valid ... ie. you are somewhat impacted by Garbage In == Garbage Out, admittedly only in some corner cases. ... This is a comment about MM5, not what you are planning.
And, ironically, in at least one case you would have got a more accurate result if you had used the JSOn fields instead of the (potentially broken) IDs
Steps below.
But first, I am not trying to diss what you are planning to do (or ? have already done?). I am just making the general points
- that a simple migration facility using JSON data would be a lot better than having no migration facility
- and that a "simple migration facility would OK for my own personal Use Case
- is OK to stop talking about this now? I get it that you don't agree
- create autoplaylist where criteria is Album - "The Dark Side of the Moon" ... select the album from the list provided by the MM5 autoplaylist wizard
- then (later) select all tracks in the album, and retag to change, or add, an albumartist tag ... eg. add Roger Waters ==> MM5 it creates a new row in the albums table, with a new IDAlbum
- MM5 does not alter the autoplaylist ... the playlist is now broken
- ironicaly the JSON field is still accurate, so in this case at least you would have got a function playlist if you migrated using the JSON field
- Or create autoplaylist where criteria is Album - "The Dark Side of the Moon" ... select the album from the list provided by the MM5 autoplaylist wizard
- then (later) select all tracks in the album, and retag to change the album name to 'Dark Side of the Moon'" ==> MM5 doesn't just alter the album name .. it creates a new row in the albums table, with a new IDAlbum
- MM5 does not alter the autoplaylist ... the playlist is now broken ... ie. is not protected by the fact that it used IDs
- in this case you would no better off if you used the JSON data
- nb. MM5 does reuse the AlbumID if the retagging is made from the Album detail panel, .. but not done from the main panels ... so this is "correct" way to do this retagging, but who knows that??
My guess is that this is just a sub-set of situations where autoplaylists appear to become trashed.
And then there is the case of a DB REBUILD (ie. using the new MM5 DB Management option) ... that reassigns all album IDs, and probably other IDs also ... I haven't tested it, but I wonder if autoplaylists that are based on those Ids are protected?