[Bug] Movies randomly removed from manually created collections

PMS version: 1.30.2.6563
Plex Web version: 4.87.2

I create a new collection (Collection: Sherlock Holms) and add 14 movies to it. And then several existing collections are emptied. The movies in those collections remain on the hard drive where they’ve always been. Some collections are not affected.

When I search PMS’s log directory for the name of an affected collection (i.e. Collection: Fast Cars), the only thing I see are those log entries related to that collection that occurred days ago. There are no log entries for the day in which I created the Collection: Sherlock Holms collection. So, I haven’t posted any logs (none seem relevant).

These are all manual collections correct? (not Smart Collections) Also do you have automatic collections enabled for library? (It should not matter just want to know as much as I can to try to reproduce.)

Yes, manual collections. To create a collection, I pick one of the movies that will go in the collection and then Add To > Add to Collection and then name the new collection and then click on Create. Then for each of the remaining movies that I want added to that newly created collection, I select the movie and then Add To > Add to Collection and then select the just-created collection (which I believe now appears at the top of the list of existing collections). I am not entering the name of a collection in the movie’s Tag > Collections field.

UPDATE:

I changed the title of this post to more accurately reflect what is happening, which is that movies manually added to collections randomly disappear from the collection, leaving the collection either with fewer movies in it or completely empty. This happens repeatedly. Deleting the collection and then re-adding the movie does not resolve the problem. Simply adding the movies back to the existing collection (even if the collection contains no movies) also does not resolve the problem. This is highly repeatable (and so should have been resolved years ago).

<Rant>
Further research on this problem revealed many posts on Reddit indicating that this problem has been occurring for at least 3 years, more likely 4 years, without the defect ever being fixed. Very disappointed in the attention Plex Media staff pay to software defects.
</Rant>

Here is more constructive information: The following chunk of log entries, from Plex Media Server.1.log show the “expensive” (this is the term that appears in the log) metadata re-writes for the movie Baby Driver. When this metadata update is complete (see last entry in log sample) the movie is no longer in the collection. Those movies that were removed from their respective collections all have similar log entries. For those movies still remaining their respective collections, there are no such log entries.

In my opinion, I have provided enough information for a competent developer to resolve this defect.

Feb 22, 2023 02:06:00.390 [14464] DEBUG - [Req#3d6e] Loading Movie 'Baby Driver' XML from C:\Users\mbmas\AppData\Local\Plex Media Server\Metadata\Movies\7\e3fbe6e7c446060824e7e41b9a1cd8e3befbf54.bundle\Contents/_combined
Feb 22, 2023 02:06:00.392 [14464] DEBUG - [Req#3d6e] Item 433 (Baby Driver) Scanning metadata graphic elements in XML file ""/Info.xml
Feb 22, 2023 02:06:00.393 [12988] DEBUG - It took 0.000000 ms to retrieve 126 items.
Feb 22, 2023 02:06:00.399 [12988] DEBUG - Activity: ended sub-activity 7a7106ac-aa34-46ff-9846-c7f80888e64d parent: e0788948-5538-4f92-ba25-cc7d8817a3a0 overall progress: 100.0% (31/31)
Feb 22, 2023 02:06:00.399 [12988] DEBUG - Activity: updated activity e0788948-5538-4f92-ba25-cc7d8817a3a0 - completed 100.0% - Butler tasks
Feb 22, 2023 02:06:00.399 [12988] DEBUG - Activity: registered new sub-activity bd24c56e-d4d5-47c7-b45e-10b386afbbf6 - "RefreshLocalMedia" parent: e0788948-5538-4f92-ba25-cc7d8817a3a0 overall progress: 96.9% (31/32)
Feb 22, 2023 02:06:00.399 [12988] DEBUG - Activity: updated activity e0788948-5538-4f92-ba25-cc7d8817a3a0 - completed 96.9% - Butler tasks
Feb 22, 2023 02:06:00.400 [12988] DEBUG - Refreshing GUID: 'com.plexapp.agents.imdb://tt0088846?lang=en'
Feb 22, 2023 02:06:00.400 [12988] DEBUG - [HCl#61e] HTTP requesting GET http://127.0.0.1:32400/system/agents/update?mediaType=1&force=1&respectTags=1&guid=com%2Eplexapp%2Eagents%2Eimdb%3A%2F%2Ftt0088846%3Flang%3Den&id=435&agent=com.plexapp.agents.localmedia&async=0
Feb 22, 2023 02:06:00.400 [21684] DEBUG - Request: [127.0.0.1:50054 (Loopback)] GET /system/agents/update?mediaType=1&force=1&respectTags=1&guid=com%2Eplexapp%2Eagents%2Eimdb%3A%2F%2Ftt0088846%3Flang%3Den&id=435&agent=com.plexapp.agents.localmedia&async=0 (21 live) #3d71 GZIP Signed-in / Accept => */* / Accept-Encoding => gzip / Host => 127.0.0.1:32400 / User-Agent => PlexMediaServer/1.31.0.6654-02189b09f
Feb 22, 2023 02:06:00.400 [21684] DEBUG - [Req#3d71] [com.plexapp.system] Sending command over HTTP (GET): /system/agents/update?mediaType=1&force=1&respectTags=1&guid=com%2Eplexapp%2Eagents%2Eimdb%3A%2F%2Ftt0088846%3Flang%3Den&id=435&agent=com.plexapp.agents.localmedia&async=0
Feb 22, 2023 02:06:00.400 [21684] DEBUG - [Req#3d71/HCl#61f] HTTP requesting GET http://127.0.0.1:64359/system/agents/update?mediaType=1&force=1&respectTags=1&guid=com%2Eplexapp%2Eagents%2Eimdb%3A%2F%2Ftt0088846%3Flang%3Den&id=435&agent=com.plexapp.agents.localmedia&async=0
Feb 22, 2023 02:06:00.406 [14464] DEBUG - [Req#3d6e] Local media already exists (metadata://posters/com.plexapp.agents.imdb_59b569648a011aa5ee406787a8d680297a1152c9)
Feb 22, 2023 02:06:00.407 [14464] DEBUG - [Req#3d6e] Item 433 (Baby Driver) Scanning metadata graphic elements in XML file ""/Info.xml
Feb 22, 2023 02:06:00.407 [9684] DEBUG - Request: [127.0.0.1:50179 (Loopback)] GET /:/plugins (22 live) #3d70 GZIP Signed-in Token (mbmast) / Accept-Encoding => gzip / Connection => close / Host => 127.0.0.1:32400 / User-Agent => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.74.9 (KHTML, like Gecko) Version/7.0.2 Safari/537.74.9 / X-Plex-Token => xxxxxxxxxxxxxxxxxxxx49bf-93f2-86ab419b5f4f
Feb 22, 2023 02:06:00.407 [9684] VERBOSE - [Req#3d70] It took 0.0 sec to serialize a list with 23 elements.
Feb 22, 2023 02:06:00.407 [18936] DEBUG - Completed: [127.0.0.1:50179] 200 GET /:/plugins (22 live) GZIP 0ms 618 bytes
Feb 22, 2023 02:06:00.410 [14464] DEBUG - [Req#3d6e] Local media already exists (metadata://art/com.plexapp.agents.imdb_3502c3a4f6236910b1cea6186941e52c25da1306)
Feb 22, 2023 02:06:00.411 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 4) since nothing changed.
Feb 22, 2023 02:06:00.412 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 5) since nothing changed.
Feb 22, 2023 02:06:00.414 [14464] DEBUG - [Req#3d6e] Doing expensive tags write for 'Baby Driver' because something changed.
Feb 22, 2023 02:06:00.426 [9684] DEBUG - Request: [127.0.0.1:50180 (Loopback)] GET /:/metadata/processing?id=435 (22 live) #3d78 GZIP Signed-in Token (mbmast) / Accept-Encoding => gzip / Connection => close / Host => 127.0.0.1:32400 / User-Agent => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.74.9 (KHTML, like Gecko) Version/7.0.2 Safari/537.74.9 / X-Plex-Token => xxxxxxxxxxxxxxxxxxxx49bf-93f2-86ab419b5f4f
Feb 22, 2023 02:06:00.428 [18936] DEBUG - Completed: [127.0.0.1:50180] 200 GET /:/metadata/processing?id=435 (22 live) GZIP 1ms 166 bytes
Feb 22, 2023 02:06:00.437 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 1) since nothing changed.
Feb 22, 2023 02:06:00.437 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 7) since nothing changed.
Feb 22, 2023 02:06:00.437 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 8) since nothing changed.
Feb 22, 2023 02:06:00.439 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 10) since nothing changed.
Feb 22, 2023 02:06:00.440 [14464] DEBUG - [Req#3d6e] Updating metadata item (save) (Baby Driver) with ID 433
Feb 22, 2023 02:06:00.442 [14464] DEBUG - [Req#3d6e] Doing expensive tags write for 'Baby Driver' because something changed.
Feb 22, 2023 02:06:00.446 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 305) since nothing changed.
Feb 22, 2023 02:06:00.446 [14464] VERBOSE - [Req#3d6e] Skipping expensive tags write for 'Baby Driver' (type: 314) since nothing changed.
Feb 22, 2023 02:06:00.503 [14464] DEBUG - [Req#3d6e] Extras: 31 existing extras.
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver (Clean Trailer)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Sizzle Reel (Home Ent.)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Driver's Seat Featurette (International)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Bats (International)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Baby (International)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Doc (International)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Driven By Music Featurette (International)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Celebrity Impressions-Kevin Spacey/Ansel Elgort (Featurette)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Buddy & Darling' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Driven By Music (Featurette)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Bats' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Driver's Seat (Featurette)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Jon Hamm, Ansel Elgort And Jamie Foxx On Knowing On Set This Film Would Be Special' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Eiza Gonzalez And Lily James On Being In An Edgar Wright Film' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.504 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Edgar Wright On The Genesis Of The Film' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Jon Hamm On The Relationship Between 'Buddy' And 'Darling'' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Kevin Spacey On Music Playing An Important Role' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Lily James On The Relationship Between 'Debora' And 'Baby'' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Lanny Joon On His Character' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Jon Bernthal On Director Edgar Wright' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Jamie Foxx On Director Edgar Wright And The Fantastic Cast' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Flea On The Story Having Poetry, Music And Action' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Edgar Wright On This Movie Being His Dream Project' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Eiza Gonzalez On Her Character' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: CJ Jones On The Script' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Ansel Elgort On The Story Of Baby Driver' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Beat By Beat (Featurette)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Doc' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Revved Up (Vignette)' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Character Vignette Baby' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.505 [14464] DEBUG - [Req#3d6e] Extras: Checked extra 'Baby Driver: Baby Story' and found matched: 1 Media matched: 1
Feb 22, 2023 02:06:00.506 [14464] DEBUG - [Req#3d6e] Doing expensive tags write for 'Baby Driver' because something changed.
Feb 22, 2023 02:06:00.508 [14464] DEBUG - [Req#3d6e] Collections: Found 16 collections tags in section 3.
Feb 22, 2023 02:06:00.508 [14464] DEBUG - [Req#3d6e] Collections: We had 16 collections in the library already.
Feb 22, 2023 02:06:00.508 [14464] DEBUG - [Req#3d6e] Collections: Synced tags in section 3 in 0ms.
Feb 22, 2023 02:06:00.514 [14464] DEBUG - [Req#3d6e] Collections: Refreshed attributes for 0 collections in section 3 in 5ms.
Feb 22, 2023 02:06:00.515 [14464] DEBUG - [Req#3d6e] Collection: Refreshed visibility in section 3 in 1ms.
Feb 22, 2023 02:06:00.515 [14464] DEBUG - [Req#3d6e] Loading information from media bundle for part ID 895 from "C:\Users\mbmas\AppData\Local\Plex Media Server\Media\localhost\b\52ae6e03778bed30efbb65d33aec72df0356731.bundle\Contents"
Feb 22, 2023 02:06:00.516 [14464] DEBUG - [Req#3d6e] Loaded metadata for Baby Driver (ID 433) in 125ms
Feb 22, 2023 02:06:00.516 [14464] DEBUG - [Req#3d6e] There was a change for metadata item 433 (Baby Driver), saving.
Feb 22, 2023 02:06:00.516 [14464] DEBUG - [Req#3d6e] Updating metadata item (save) (Baby Driver) with ID 433
Feb 22, 2023 02:06:00.572 [14464] DEBUG - [Req#3d6e] Done with metadata update for 433
  1. don’t enable “verbose” logging
  2. you are still using the old, deprecated metadata agent
  3. do you have “Empty trash automatically after every scan” enabled on your server? If so, disable it – unless your media are all stored on hard drives inside of your Plex server machine.

I will disable verbose logging.

The agents available for movies are: Personal Media, Plex Movie (Legacy) and The Movie Database.

Currently, Personal Media is selected (I don’t recall ever changing this, so not sure why this is the current setting). The Local Media Assets (Movies) additional agent is also currently selected.

It appears the only “correct” choice for the agent would be The Movie Database, which then gives me the option to select or unselect Local Media Assets (Movies) as an additional agent.

Is The Movie Data with Local Media Assets (Movies) the setting I should have?

That’s because the library was created with one of the old agents in the first place. Doing so does also select the old scanner.

No.
Here’s how to convert the library: https://support.plex.tv/articles/upgrading-a-movie-library-to-the-use-the-new-plex-movie-agent/

Be advised that by doing so, you will no longer be able to use the the old opensubtitles.org sub-agent.

I didn’t answer one of your questions: all my movies are on my plex server’s harddrive.

The article describes a process that does not match what I am seeing:

There is no Upgrade Matching to select.

When I click on Edit and then Advanced, I see this:

Disable the setting anyway, particularly if you let the drive spin down when it’s idle.
Then see if the issue persists.

Ahh, the plot thickens. The library as such has already been converted, but the already existing movies in it haven’t, yet.

Take a look at the Plex media info XML of that example movie. I expect the content of the first guid="... property to be com.plexapp.agents.imdb://tt0088846?lang=en.
Do also inspect the properties of this movie in the Plex user interface. Check if the orange lock is engaged on the “Collection” field. All fields which are not locked can get overwritten by Refresh Metadata, particularly if you let the new metadata agent fetch the collection information.

Review the “Minimum automatic collection size” in the properties of the library, to make sure it aligns with your personal preferences. Disable it if you only want your own, manually created collections in the library.
Then trigger “Refresh All Metadata” on that movie. Then let the server do its thing until it is finished.

After the successful completion, take a look at the Plex media info XML of that movie again.
The guid=... XML property should now have the content "plex://movie/5d776ba0ad5437001f7a5376" instead.

Sorry, which setting?

I expect the content of the first guid="... property to be com.plexapp.agents.imdb://tt0088846?lang=en

It’s close to that, but not quite: guid="com.plexapp.agents.imdb://tt3890160?lang=en"

Check if the orange lock is engaged on the “Collection” field.

It is not locked. But it is also empty, as it was removed from the collection by whatever-is-happening. I take it that once I’ve manually added a movie to a collection, I need to lock this field? (I feel that if I manually add a movie to a collection and this field needs to be locked, then Plex should lock it automatically).

Review the “Minimum automatic collection size” in the properties of the library, to make sure it aligns with your personal preferences.

It is set to Disabled. Recall that I am manually creating the collections, so I think this is fine.

Then trigger “Refresh All Metadata” on that movie. Then let the server do its thing until it is finished.

After the successful completion, take a look at the Plex media info XML of that movie again.
The guid=... XML property should now have the content "plex://movie/5d776ba0ad5437001f7a5376" instead.

It is exactly that.

So, is this the takeaway?:

  1. Turn off some setting (I’ve already asked about that) in case hard drives spin down when not in use.
  2. Refresh all metadata on all movies.
  3. Once a movie has been manually added to a collection, update the movie’s setting to lock the collection.

Pretty much. You can refresh metadata for the whole library at once if you want.

"Empty trash automatically after every scan”

So far so good. I won’t really know for a couple of days as that’s how long my previous collections held together before getting emptied. I appreciate your help.

I think everyone (plex staff, plex users) would benefit from a decent customer facing bug reporting system so issues like this can be easily located and users can see what resolutions or workarounds are available. Even just creating a Plex “instance” of a StackExchange site would be better than a general forum like this.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.