I am noticing a big performance degradation running overlays for my tv shows/seasons/episodes (3 seconds per episode, with PMS 1.31.2, and I have over 27,000), so I commented out all of the episode level overlays from my config file, and ran Plex Image Cleanup (cleaned up over 40GB of images between bloat and photo transcoder images), restarted Plex and ran PMM again. When running PMM, I noticed that before applying any overlays to the tv shows, it says it is removing overlays from all of the episodes, which is quite time-consuming and should not be happening, since "remove_overlays", and "reapply_overlays" are both set to false. Is this an issue with the latest nighlty or is this by design? Any help will be greatly appreciated.
#PMM Removing Overlays even though remove overlays is set to false
1 messages · Page 1 of 1 (latest)
Welcome Back @ionic island!
Thanks for being a PMM Sponsor, we greatly appreciate it! Your ticket will now be diverted to <@&1097919568334311495> and <@&938443185347244033>.
Please provide any logs if you think they're relevant to your post.
You can press the "Close Post" button above or type /close at any time to close this post.
After commenting out the episode overlays, did you run PMM to actually remove them, or is this that first run?
This is that first run, I wanted to see the performance doing overlays only for tv shows
Then this is behaving as expected.
I do not follow, my apologies. What is the reason the episode overlays are being deleted?
You commented them out of the config.
Ah, so then PMM understands that they are not required?
Yes.
OK, thanks, I get it now. I will just have to wait until they are all deleted then
If I see that the performance applying overlays to tv shows is also 3 seconds per tv show, I will try downgrading to 1.29. I do not know what happened, since before, with the same PMS 1.31.2, the episode overlays would finish in about 6 hours
Additional question: If I had used a different library name, still pointing to my tv shows library, that only had tv show level overlays, would PMM have still deleted the episode overlays?
Yes.
Can you confirm if you are running 1.31.2.6810-a607d384f
I have noticed some degradation of performance and still trying to pinpoint it. If you see better results with 1.29, let us know…
I am running that version, Windows 64 bit under Windows 11
Thanks
Ok. I am on unraid running that version
@scenic wadi has had quite a bit of testing that they did… just tagging him so when he has a chance he might be able to weigh in as well…
And as we speak, its taking 6 -8 seconds to tell me that am overlay is not needed...
so i dunno.. but there is not much going on....
I finally settled on 1.32.3.7192 as the latest version that worked well for me. Although I'm still hopeful that PMM will eventually support multiple operations on a single API call, to ease the amount of API calls being sent to Plex. I'm a bit disappointed the Plex employee hasn't responded to the thread since his initial comment.
oh wow... so you moved back up to 1.32
Yeah but specifically 7192. The next version after that one got slow again
so when you ran your tests, 1.29.2.6364, 1.31.2.6810 performed the same? And now 1.32.3.7192 is also performing the same way?
This was a very controlled test on a small test library, but yes, that's what I found. When I run things on my main (quite large) library I still get the db lockup from time to time, and Plex losing its connection. But that happens on all versions, and that's why I hope PMM can be reworked to be more efficient with API calls
In my tests, it was the difference between finishing in 8 minuts vs 40 minutes
Nope, I'm running Plex in docker
docker pull plexinc/pms-docker:1.32.3.7192-7aa441827
woud you have teh full docker id for that version?
there it is. thanks!
for the most part, we have been instructing people here iwth PMM/Plex performance issues to downgrade to the other two versions mentioned here
I mean, those definitely work fine as well
Do you know if there has been any headway in optimizing PMM to work with the new plex-api updates for allowing fewer api hits?
Our dev has been super swamped at his day job so I don't believe much has been done yet.
Was the PR for it merged?
Last time I looked it was still an open PR but that was a fair while ago
It was merged into PlexAPI.
Nice
so its in plexapi, and now to take advantage of the optimizations, changes to PMM are required, right?
I just got back to see how my test went. Applying overlays just for tv starts well, around 2 overlays per second, but after a while, they start taking 2 - 3 seconds per overlay
I was looking at the PMS log and after a certain point, it starts saying that it is doing "expensive tags write for xxxxx because something changed", where xxxxxx is the name for each tv show from that point on
Yes, and probably non-trivial changes.
In that excerpt you can see that it takes 2 seconds to finish processing the tv show Ozark. I have no idea what changed between one show and the next, and there are no other users on my Plex server at this time
This isn't anything PMM can affect, as it's entirely internal to Plex.
Thanks. I figured that, just thought that maybe you had an idea about what it could be
@scenic wadi , what database cache size do you have for your Plex server?
I've tried different options but it doesn't seem to make a difference. On my test server I just have it set at 40
40000 MB?
I am not certain, since until now i was using a version of PMS that did not have that setting
I am testing again with the version you mentioned, 1.32.3.7192
@final fractal do you know if we can grab the Plex DB cache size settings with the PlexApi? Could be useful when we post the plex config setting in the PMM meta.log
Not offhand.
i was doing a query of the docs and trying to search for anything but not sure what that would be called...
Doesn't look it so far as I can tell.
probably not.
My test of the overlays for my 1324 tv shows (no episodes) with PMS 1.32.3.7192 took 17 minutes, and PMM was applying overlays at a rate of 2 -3 per second
So that is fine. Now I will test with the episodes.
so I think that when building a "test", it should always have shows, seasons, episodes, movies... to exercise plex and pmm and the plexapi as much as possible...
and should always consider resetting the pmm cache file after every run as this will affect results as well
You are correct, thank you! I will do that in the future 🙂
no problem... I just wanted to make sure that your results are as accurate as possible
Looks like it will be released in the next push of the plexapi
Looks like it's there now.
Or maybe not:
>>> plex = PlexServer()
>>> setting = plex.settings.get('DatabaseCacheSize')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/Media-Scripts/.direnv/python-3.10.12/lib/python3.10/site-packages/plexapi/settings.py", line 54, in get
raise NotFound(f'Invalid setting id: {id}')
plexapi.exceptions.NotFound: Invalid setting id: databaseCacheSize
If I go to that page referenced, I cannot find the reference
to DatabaseCacheSize
so I suspect it will be pushed on the next build
The individual settings behind the settings list aren't detailed on that page.
right.. just saw that from the dev:
Unfortunately, when applying overlays to episodes, with PMS 1.32.3, it is taking 3 -4 seconds per episode.
At this rate, it will take over 22 hours to complete
This is not unexpected, so far as I know.
Please clarify which version you are talking about
1.32.3.7192, windows 64 bit
I'm doing another test, and 1.32.3.7192-7aa441827 is quite fast. I then upgraded to 1.32.4.7195-7c8f9d3b6 and it is considerably slower. Maybe it's different on Windows, since I am using docker on ubuntu.
It must be different for Windows, yes. I could run docker under Windows, but I am not too keen on redoing my whole Plex installation again
I would suggest just setting up a test installation, and import a library from a single source to start out with, just to see the results you get
That is a good idea, thanks. If I run Plex in docker, do I need to run PMM in docker also? I do not know much about docker yet
No, though it's usually not a bad idea to go one way or the other.
What he said
In windows, especially, keep both in docker. I have seen May people struggle with docker on windows trying to have the local machine or vice versa talking to and from the container. Container to container has had more success.
My apologies for being a noob, but do I lose any hardware transcoding capabilities by running Plex in docker? I have an nVidia Quadro P2000 that I know works well for hw transcoding in Windows
You can map that device into the container, at least in Linux. I use HW transcoding in a container on Linux.
Thanks, I will look into that
I presume that you have updated to teh latest version of plexapi when you ran this?
Thanks… I reported it
possible that you are connecting to a version of plex (1.29) that might not expose that setting? or that you were not using an admin account? This is what the dev mentioned... so I am thinking that its the version of plex you are running that might cause the error?
Could be the plex version; it's an admin account.
DB cache size was added in 1.30.1.6483
Anything further required here?
Should I submit an FR to add the db cache size as information to show in meta.log under the Plex Configuration section given that we now know that works with server version 1.30.1.6483 and newer?
Gotta remember if I should do that in GH directly or on that canvas page
@final fractal , no thanks. It can be closed