Comments (8)
Hi!
Thanks for bringing this up. I looked through the log. Interesting that there are tons of 405 errors regarding the TVDB API. I just checked one of those failed API calls and it worked on my side.
I guess it might have to do with the TVDB API itself. I hope those go away otherwise I would have to investigate that.
The crash seems to be memory related. Your TV Show library seems to have nearly 40000 items. I guess the memory hard limit of 256MB is not enough to handle such a large library. I will update the docker file tomorrow to allow setting the memory limit manually via an environment variable.
Once that is done I'll notify you in this issue and you can then try it with 512MB or if actually necessary 1024MB. At 40000 items there are tons of Strings loaded that can easily eat up a good portion of the available RAM.
from updatetool.
Haha yeah my TV show library is a bit large
I assumed the 405 errors were due to rate limiting as it seems to hit the API as fast as humanly possible, I did not try the API calls outside of the tool though.
A configurable variable would be nice for Java's memory, I already limit my RAM for my dockers using the docker "--Memory=2GB" parameter.
Thanks for looking into it!
from updatetool.
Alright I have updated the Dockerfile.
You can specify a custom max. heap via the environment variable JVM_MAX_HEAP
. Maybe you try out 512m
first and if it still crashes try 1g
. Let me know if the error still persists!
I also changed the tool to request garbage collection after every run and tweaked the JVM startup settings so unused allocated heap space is released back to the OS at a certain threshold. So if a run requires 512MB the garbage collection will push it down to something like 12-20MB after the task has finished and the JVM will shrink to something like 20-40MB. So unused heap is not stolen from the OS anymore.
The 405 errors usually come in place when you request a resource with the wrong method i.e. GET
where POST
is required. I have no idea why TVDB would return that since GET
is used on a GET
resource. APIs are weird, their website does not mention that code in the documentation for that endpoint. No idea whats happening there tbh.
from updatetool.
Thanks for the update!
I set the variable to start at 512m and restarted the container. It does not appear to immediately execute a ratings sync anymore? Does it now only run when scheduled even at container start?
When I first started playing with the container every time it was restarted a sync would occur. I can wait for the next scheduled run, just wasn't sure if this was an issue on my end or a change in behavior.
from updatetool.
It should start immediately. I changed the backend so the logs will look differently now at startup. Can you upload the log to this issue?
from updatetool.
Sure, this is literally all that's been logged since I started the container about four hours ago:
from updatetool.
Whatever happened there should not happen now anymore. Let me know if it persists.
from updatetool.
It seems to be working now! The process didn't get to finish because Comcast is crap, but that is an all to familiar story for most of us. Thanks for your help.
EDIT: I like that it was able to resume the run on its own even though my internet cut out. Ran successfully, no more JVM Heap Crash.
from updatetool.
Related Issues (20)
- IMDB Series ratings not updating. HOT 2
- UpdateTool breaks Plex database HOT 41
- TVDB API - Docs confusing? HOT 2
- TVDB v4 key won't work, and app no longer accepts legacy key HOT 2
- TV Series rating HOT 1
- Environment variable not reflecting when running from bat file on Windows. HOT 1
- GUI Application Display Text Issue HOT 2
- Error in GUI Tool MAC OS HOT 7
- addition to logging
- docker question HOT 1
- Using this with Plex Meta Manager - Don't wipe labels/overlays HOT 3
- Plex Server v1.40.0.7775 breaks UpdateTool HOT 26
- ISSUE: Set correct plex media server folder (the one with 'Plug-in Support' in it). HOT 3
- Add ability to run on-demand or without scheduling HOT 2
- TVDB API V3 deprecated HOT 1
- Enhancement: Minimum votes for update HOT 4
- Error: a JNI error has occured, please check your installation and try again. HOT 1
- Unraid current integration HOT 7
- Run every 24hrs seems to be a more sane default HOT 1
- [QUESTION] Shows still have TMDB rating HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from updatetool.