Plex-Meta-Manager: Seasonal Collection is failing

Version Number

1.19.1

What branch are you on?

master

Describe the Bug

The PMM Seasonal collection should have added a Halloween collection on 10/1, but is failing. When PMM gets to the Validating Method: append_label section, it pulls Value: Seasonal and then several errors pop up, eventually ending with a (404) not_found exception.

Relevant Collection/Overlay/Playlist Definition

[2023-10-03 21:37:19,064] [builder.py:198]            [INFO]     |====================================================================================================|
[2023-10-03 21:37:19,066] [builder.py:198]            [INFO]     |                               Halloween Movies Collection in Movies                                |
[2023-10-03 21:37:19,068] [builder.py:198]            [INFO]     |====================================================================================================|
[2023-10-03 21:37:19,069] [builder.py:199]            [INFO]     |                                                                                                    |
[2023-10-03 21:37:19,071] [builder.py:210]            [INFO]     |================================ Building Definition From Templates ================================|
[2023-10-03 21:37:19,073] [builder.py:211]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,075] [builder.py:221]            [DEBUG]    | Templates Called: holiday, shared, arr                                                             |
[2023-10-03 21:37:19,076] [builder.py:222]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,111] [meta.py:355]               [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,113] [meta.py:356]               [DEBUG]    | Conditional: name_<<key>>                                                                          |
[2023-10-03 21:37:19,115] [meta.py:355]               [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,116] [meta.py:356]               [DEBUG]    | Conditional: summary_<<key>>                                                                       |
[2023-10-03 21:37:19,152] [meta.py:571]               [DEBUG]    |==================================== Final Template Attributes =====================================|
[2023-10-03 21:37:19,153] [meta.py:572]               [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,155] [meta.py:573]               [DEBUG]    | {'smart_label': {'sort_by': 'random', 'all': {'label': '<<smart_label>>'}}, 'schedule': 'range(10/01-10/31)', 'delete_not_scheduled': True, 'sync_mode': 'sync', 'tmdb_collection': [185103, 11716, 750822, 313086, 91361, 8581, 1733, 8091, 2980, 751156], 'tmdb_movie': [23437], 'imdb_list': ['https://www.imdb.com/list/ls023118929/', 'https://www.imdb.com/list/ls000099714/'], 'cache_builders': 1, 'translation_key': 'seasonal', 'key_name': 'Halloween', 'translation_prefix': 'πŸŽƒ ', 'ignore_blank_results': True, 'visible_home': True, 'visible_shared': True, 'sort_title': '!00_<<title>>', 'url_poster': 'https://raw.githubusercontent.com/meisnate12/Plex-Meta-Manager-Images/master/seasonal/halloween.jpg'} |
[2023-10-03 21:37:19,157] [meta.py:574]               [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,158] [builder.py:238]            [INFO]     |============================== Validating Halloween Movies Attributes ==============================|
[2023-10-03 21:37:19,160] [builder.py:277]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,162] [builder.py:278]            [DEBUG]    | Validating Method: key_name                                                                        |
[2023-10-03 21:37:19,163] [builder.py:291]            [DEBUG]    | Value: Halloween                                                                                   |
[2023-10-03 21:37:19,165] [builder.py:303]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,166] [builder.py:304]            [DEBUG]    | Validating Method: translation_key                                                                 |
[2023-10-03 21:37:19,168] [builder.py:307]            [DEBUG]    | Value: seasonal                                                                                    |
[2023-10-03 21:37:19,170] [builder.py:320]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,171] [builder.py:321]            [DEBUG]    | Validating Method: translation_prefix                                                              |
[2023-10-03 21:37:19,172] [builder.py:322]            [DEBUG]    | Value: πŸŽƒ                                                                                           |
[2023-10-03 21:37:19,174] [builder.py:387]            [INFO]     | πŸŽƒ Halloween Movies                                                                                 |
[2023-10-03 21:37:19,181] [plex.py:985]               [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,183] [plex.py:988]               [DEBUG]    | Looking for: πŸŽƒ Halloween Movies                                                                    |
[2023-10-03 21:37:19,184] [builder.py:631]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,186] [builder.py:632]            [DEBUG]    | Validating Method: ignore_blank_results                                                            |
[2023-10-03 21:37:19,187] [builder.py:633]            [DEBUG]    | Value: True                                                                                        |
[2023-10-03 21:37:19,189] [builder.py:641]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,191] [builder.py:642]            [DEBUG]    | Validating Method: smart_label                                                                     |
[2023-10-03 21:37:19,192] [builder.py:647]            [DEBUG]    | Value: {'sort_by': 'random', 'all': {'label': '<<smart_label>>'}}                                  |
[2023-10-03 21:37:19,200] [builder.py:668]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,202] [builder.py:669]            [DEBUG]    | Validating Method: delete_not_scheduled                                                            |
[2023-10-03 21:37:19,204] [builder.py:670]            [DEBUG]    | Value: True                                                                                        |
[2023-10-03 21:37:19,206] [builder.py:687]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,208] [builder.py:688]            [DEBUG]    | Validating Method: schedule                                                                        |
[2023-10-03 21:37:19,210] [builder.py:692]            [DEBUG]    | Value: range(10/01-10/31)                                                                          |
[2023-10-03 21:37:19,213] [builder.py:747]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,214] [builder.py:748]            [DEBUG]    | Validating Method: sync_mode                                                                       |
[2023-10-03 21:37:19,216] [builder.py:752]            [DEBUG]    | Value: sync                                                                                        |
[2023-10-03 21:37:19,218] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,220] [builder.py:962]            [DEBUG]    | Validating Method: tmdb_collection                                                                 |
[2023-10-03 21:37:19,222] [builder.py:963]            [DEBUG]    | Value: [185103, 11716, 750822, 313086, 91361, 8581, 1733, 8091, 2980, 751156]                      |
[2023-10-03 21:37:19,551] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:19,553] [builder.py:962]            [DEBUG]    | Validating Method: tmdb_movie                                                                      |
[2023-10-03 21:37:19,555] [builder.py:963]            [DEBUG]    | Value: [23437]                                                                                     |
[2023-10-03 21:37:21,175] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:21,177] [builder.py:962]            [DEBUG]    | Validating Method: imdb_list                                                                       |
[2023-10-03 21:37:21,179] [builder.py:963]            [DEBUG]    | Value: ['https://www.imdb.com/list/ls023118929/', 'https://www.imdb.com/list/ls000099714/']        |
[2023-10-03 21:37:25,370] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:25,372] [builder.py:962]            [DEBUG]    | Validating Method: cache_builders                                                                  |
[2023-10-03 21:37:25,374] [builder.py:963]            [DEBUG]    | Value: 1                                                                                           |
[2023-10-03 21:37:25,375] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:25,377] [builder.py:962]            [DEBUG]    | Validating Method: visible_home                                                                    |
[2023-10-03 21:37:25,378] [builder.py:963]            [DEBUG]    | Value: True                                                                                        |
[2023-10-03 21:37:25,379] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:25,381] [builder.py:962]            [DEBUG]    | Validating Method: visible_shared                                                                  |
[2023-10-03 21:37:25,383] [builder.py:963]            [DEBUG]    | Value: True                                                                                        |
[2023-10-03 21:37:25,384] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:25,386] [builder.py:962]            [DEBUG]    | Validating Method: sort_title                                                                      |
[2023-10-03 21:37:25,387] [builder.py:963]            [DEBUG]    | Value: !00_<<title>>                                                                               |
[2023-10-03 21:37:25,388] [builder.py:958]            [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:25,390] [builder.py:962]            [DEBUG]    | Validating Method: url_poster                                                                      |
[2023-10-03 21:37:25,391] [builder.py:963]            [DEBUG]    | Value: https://raw.githubusercontent.com/meisnate12/Plex-Meta-Manager-Images/master/seasonal/halloween.jpg |
[2023-10-03 21:37:25,507] [builder.py:1064]           [DEBUG]    |                                                                                                    |
[2023-10-03 21:37:25,510] [builder.py:1065]           [DEBUG]    | Validating Method: append_label                                                                    |
[2023-10-03 21:37:25,511] [builder.py:1066]           [DEBUG]    | Value: Seasonal                                                                                    |
[2023-10-03 21:37:25,527] [plex_meta_manager.py:819]  [DEBUG]    | Traceback (most recent call last):                                                                 |
                                                                 |   File "/app/pmm/plex_meta_manager.py", line 677, in run_collection                                |
                                                                 |     builder = CollectionBuilder(config, metadata, mapping_name, collection_attrs, library=library, extra=output_str) |
                                                                 |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
                                                                 |   File "/app/pmm/modules/builder.py", line 1126, in __init__                                       |
                                                                 |     self.beginning_count = len(self.library.fetchItems(check_url))                                 |
                                                                 |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                  |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/retrying.py", line 56, in wrapped_f                   |
                                                                 |     return Retrying(*dargs, **dkw).call(f, *args, **kw)                                            |
                                                                 |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                            |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/retrying.py", line 257, in call                       |
                                                                 |     return attempt.get(self._wrap_exception)                                                       |
                                                                 |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                       |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/retrying.py", line 301, in get                        |
                                                                 |     six.reraise(self.value[0], self.value[1], self.value[2])                                       |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/six.py", line 719, in reraise                         |
                                                                 |     raise value                                                                                    |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/retrying.py", line 251, in call                       |
                                                                 |     attempt = Attempt(fn(*args, **kwargs), attempt_number, False)                                  |
                                                                 |                       ^^^^^^^^^^^^^^^^^^^                                                          |
                                                                 |   File "/app/pmm/modules/plex.py", line 566, in fetchItems                                         |
                                                                 |     return self.Plex.fetchItems(f"/library/sections/{self.Plex.key}/all{uri_args}")                |
                                                                 |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/plexapi/base.py", line 255, in fetchItems             |
                                                                 |     data = self._server.query(ekey, headers=headers)                                               |
                                                                 |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                               |
                                                                 |   File "/lsiopy/lib/python3.11/site-packages/plexapi/server.py", line 760, in query                |
                                                                 |     raise NotFound(message)                                                                        |
                                                                 | plexapi.exceptions.NotFound: (404) not_found; (redacted)/library/sections/1/allNone <html><head><title>Not Found</title></head><body><h1>404 Not Found</h1></body></html> |
                                                                 |                                                                                                    |
[2023-10-03 21:37:25,568] [plex_meta_manager.py:820]  [ERROR]    | Unknown Error: (404) not_found; (redacted)/library/sections/1/allNone <html><head><title>Not Found</title></head><body><h1>404 Not Found</h1></body></html> |
[2023-10-03 21:37:25,569] [plex_meta_manager.py:825]  [INFO]     |                                                                                                    |
[2023-10-03 21:37:25,570] [plex_meta_manager.py:826]  [INFO]     |====================================================================================================|
[2023-10-03 21:37:25,572] [plex_meta_manager.py:826]  [INFO]     |                                Finished Halloween Movies Collection                                |
[2023-10-03 21:37:25,573] [plex_meta_manager.py:826]  [INFO]     |                                    Collection Run Time: 0:00:06                                    |
[2023-10-03 21:37:25,575] [plex_meta_manager.py:826]  [INFO]     |====================================================================================================|

Logs

https://gist.github.com/joecan2/2449c847d966a91c1270e6ed19d61a94

About this issue

  • Original URL
  • State: closed
  • Created 9 months ago
  • Reactions: 2
  • Comments: 40 (14 by maintainers)

Most upvoted comments

thats not the latest nightly thats nightly12 and latest is nightly30

Can PMM 1.19.2 be rolled out? Its also breaking my holiday list, nothing shows up. I tried the latest nightly 1.19.1 and I get this:

[2023-11-26 21:47:12,329] [plex_meta_manager.py:226] [INFO] |====================================================================================================| [2023-11-26 21:47:12,329] [plex_meta_manager.py:227] [INFO] | | [2023-11-26 21:47:12,330] [plex_meta_manager.py:228] [INFO] | ____ _ __ __ _ __ __ | [2023-11-26 21:47:12,330] [plex_meta_manager.py:229] [INFO] | | _ \| | _____ __ | \/ | ___| |_ __ _ | \/ | __ _ _ __ __ _ __ _ ___ _ __ | [2023-11-26 21:47:12,330] [plex_meta_manager.py:230] [INFO] | | |_) | |/ _ \ \/ / | |\/| |/ _ \ __/ _ | | |/| |/ | '_ \ / _ |/ ` |/ _ \ '__| | [2023-11-26 21:47:12,330] [plex_meta_manager.py:231] [INFO] | | __/| | __/> < | | | | __/ || (| | | | | | (| | | | | (| | (| | / | | [2023-11-26 21:47:12,330] [plex_meta_manager.py:232] [INFO] | || ||_//_\ || ||___|__,| || ||_,|| ||_,|_, |___|| | [2023-11-26 21:47:12,330] [plex_meta_manager.py:233] [INFO] | |___/ | [2023-11-26 21:47:12,331] [plex_meta_manager.py:235] [INFO] | Version: 1.19.1-nightly12 (Docker) | [2023-11-26 21:47:12,447] [plex_meta_manager.py:239] [INFO] | Newest Version: 1.19.1-nightly30 | [2023-11-26 21:47:12,448] [plex_meta_manager.py:240] [INFO] | PlexAPI library version: 4.15.4 | [2023-11-26 21:47:12,449] [plex_meta_manager.py:241] [INFO] | Platform: Linux-6.1.49-Unraid-x86_64-with-glibc2.28 | [2023-11-26 21:47:12,449] [plex_meta_manager.py:242] [INFO] | Memory: 63 GB | [2023-11-26 21:47:12,449] [plex_meta_manager.py:265] [DEBUG] |====================================================================================================|

[2023-11-26 21:49:58,277] [builder.py:2483] [INFO] |================================== Adding to Christmas Collection ==================================| [2023-11-26 21:49:58,277] [builder.py:2484] [INFO] | | [2023-11-26 21:49:58,290] [plex_meta_manager.py:812] [DEBUG] | Traceback (most recent call last): | | File β€œ//plex_meta_manager.py”, line 708, in run_collection | | items_added, items_unchanged = builder.add_to_collection() | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/modules/builder.py”, line 2485, in add_to_collection | | name, collection_items = self.library.get_collection_name_and_items(self.obj if self.obj else self.name, self.smart_label_collection) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/modules/plex.py”, line 1140, in get_collection_name_and_items | | return name, self.get_collection_items(collection, smart_label_collection) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/modules/plex.py”, line 1129, in get_collection_items | | return self.search(label=collection.title if isinstance(collection, Collection) else str(collection)) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/usr/local/lib/python3.11/site-packages/retrying.py”, line 56, in wrapped_f | | return Retrying(*dargs, **dkw).call(f, *args, **kw) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/usr/local/lib/python3.11/site-packages/retrying.py”, line 257, in call | | return attempt.get(self._wrap_exception) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/usr/local/lib/python3.11/site-packages/retrying.py”, line 301, in get | | six.reraise(self.value[0], self.value[1], self.value[2]) | | File β€œ/usr/local/lib/python3.11/site-packages/six.py”, line 719, in reraise | | raise value | | File β€œ/usr/local/lib/python3.11/site-packages/retrying.py”, line 251, in call | | attempt = Attempt(fn(*args, **kwargs), attempt_number, False) | | ^^^^^^^^^^^^^^^^^^^ | | File β€œ/modules/plex.py”, line 544, in search | | return self.Plex.search(title=title, sort=sort, maxresults=maxresults, libtype=libtype, **kwargs) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/usr/local/lib/python3.11/site-packages/plexapi/library.py”, line 1517, in search | | return self.fetchItems( | | ^^^^^^^^^^^^^^^^ | | File β€œ/usr/local/lib/python3.11/site-packages/plexapi/base.py”, line 255, in fetchItems | | data = self._server.query(ekey, headers=headers) | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | File β€œ/usr/local/lib/python3.11/site-packages/plexapi/server.py”, line 770, in query | | raise BadRequest(message) | | plexapi.exceptions.BadRequest: (500) internal_server_error; (redacted)/library/sections/1/all?includeGuids=1&label=Christmas <html><head><title>Internal Server Error</title></head><body>

500 Internal Server Error

</body></html> |`

I seem to be running into the issue as well: Plex Server version: 1.32.8.7639 PMM: 1.19.1

| (404) not_found; (redacted)/library/sections/1/allNone <html><head><title>Not Found</title></head><body><h1>404 Not Found</h1></body></html> |

This 404 with allNone in the URL is a bug is PMM, fixed in PMM nightly. Any release of Plex past 1.32.6 will show it until you switch to the nightly release of PMM [or until PMM gets bumped to 1.19.2]

Yes, that is a change in nightly; everything that was in those individual logs is already being written to the main meta.log so they were disabled.

Try manually applying this label to an item in the library and re-running PMM, see if the 500 is still there

πŸŽƒ Halloween Movies

That worked for me! I’m on the PMM nightly and my Plex is version 1.32.7.7571 (ghcr.io/hotio/plex on unraid). I added β€˜πŸŽƒ Halloween Movies’ to Hubie Halloween and it ran like old times.

Thanks so much!

I was referring to this:

/library/sections/1/allNone

PMM had a bug where it was inappropriately adding that None onto the URL. Starting in 1.32.7, Plex returns a 404 on that URL [with the None tacked on], where previous versions [of Plex] did not. That PMM bug has been fixed in nightly, but it only caused a problem with Plex 1.32.7. The 500 is unrelated.

My 404 turned into a 500 as well on the nightly.