|
SageTV Beta Test Software Discussion related to BETA Releases of the SageTV application produced by SageTV. Questions, issues, problems, suggestions, etc. regarding SageTV Beta Releases should be posted here. |
|
Thread Tools | Search this Thread | Display Modes |
#1
|
||||
|
||||
java.lang.OutOfMemoryError? Anyone Else?
I've gotten this error a few times since the new beta cycle started. java.lang.OutOfMemoryError appears in my client log after a crash that ends up exiting sagetv completely. It rarely happens, but I'm just trying to find the root cause. I've searched around at the general consensus is that it is a general memory error and can be associated with heap or system memory. My system has 4gb of memory that hasn't gone over 51% that I've ever seen. My heap is set to 1200mb, but never gets over 900mb. Any of you java gurus know how to find the cause of this?
__________________
SageTV Server: unRAID Docker v9, S2600CPJ, Norco 24 hot swap bay case, 2x Xeon 2670, 64 GB DDR3, 3x Colossus for DirecTV, HDHR for OTA Living room: nVidia Shield TV, Sage Mini Client, 65" Panasonic VT60 Bedroom: Xiomi Mi Box, Sage Mini Client, 42" Panasonic PZ800u Theater: nVidia Shield TV, mini client, Plex for movies, 120" screen. Mitsubishi HC4000. Denon X4300H. 7.4.4 speaker setup. |
#2
|
||||
|
||||
The specifics of the OutOfMemoryError are fairly important. It indicates if it was out of java heap space, or out of native memory or out of thread space. If you're running a local UI + service mode; then you should also realize that means you're allowing it to use twice what you specify in the registry for the max heap size. So with that setting of 1200 you're allowing 2.4GB of memory allocation by SageTV. Even though the max has gotten to 900MB of usage; that doesn't mean you need your heap to be that large. The BEST way to verify that your heap size is not large enough is if you go into System Information and look at the JVM Heap Usage; then hit Delete a few times and back out of the menu and re-enter it. If the second & third values are equal; and the first value is very close to them; that means you're pretty much maxing out your heap and should increase it. Java will quite often keep allocating and using memory up to the maximum heap size even though it doesn't actually need to because it may not have garbage collected that unneeded memory yet (but it will garbage collect it before it throws an OutOfMemoryError).
__________________
Jeffrey Kardatzke Founder of SageTV |
#3
|
||||
|
||||
Thanks for the reply. So let me see if I'm understanding this correctly. I have the server running sage in service mode on my server pc. My client is running the local ui. Is the heap size used for both together or each pc independently of each other? It sounds like from what you are saying that even though they are running on different pc's the heap is for both. I may have that wrong though. Could the memory error be due to the server running out of memory when the client has plenty?
__________________
SageTV Server: unRAID Docker v9, S2600CPJ, Norco 24 hot swap bay case, 2x Xeon 2670, 64 GB DDR3, 3x Colossus for DirecTV, HDHR for OTA Living room: nVidia Shield TV, Sage Mini Client, 65" Panasonic VT60 Bedroom: Xiomi Mi Box, Sage Mini Client, 42" Panasonic PZ800u Theater: nVidia Shield TV, mini client, Plex for movies, 120" screen. Mitsubishi HC4000. Denon X4300H. 7.4.4 speaker setup. |
#4
|
|||
|
|||
I just installed 7.1.5 and noticed 2 Java out of memory errors as well. I checked system information and I had lots of JVM heap memory available as I have allocated 1.4 GB of memory to Sage. I assumed it was an incompatibility with one of the plugins so I have started removing plugins. (so far 2, CPU Meter and basic sleep timer) to see if this error goes away. I am at work so I haven't been able to check back and see if the problem has returned.
|
#5
|
||||
|
||||
Quote:
But as I said before; letting us know the specific details attached to the OutOfMemoryError in the log file will help a bunch in determining the actual cause.
__________________
Jeffrey Kardatzke Founder of SageTV |
#6
|
|||
|
|||
In my particular case uninstalling the 2 plugins I mentioned seems to have eliminated the problem (At least for now)
I have since re-installed the "basic sleep timer" plugin and haven't seen the problem recur yet so it may have been related to the CPU Utilization plugin |
#7
|
||||
|
||||
Quote:
Thanks, Tom
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#8
|
|||
|
|||
Quote:
__________________
Twitter: @ddb_db Server: Intel i5-4570 Quad Core, 16GB RAM, 1 x 128GB OS SSD (Win7 Pro x64 SP1), 1 x 2TB media drive Capture: 2 x Colossus STB Controller: 1 x USB-UIRT Software:Java 1.7.0_71; SageTV 7.1.9 Clients: 1 x HD300, 2 x HD200, 1 x SageClient, 1 x PlaceShifter Plugins: Too many to list now... |
#9
|
||||
|
||||
Quote:
__________________
SageTV Server: unRAID Docker v9, S2600CPJ, Norco 24 hot swap bay case, 2x Xeon 2670, 64 GB DDR3, 3x Colossus for DirecTV, HDHR for OTA Living room: nVidia Shield TV, Sage Mini Client, 65" Panasonic VT60 Bedroom: Xiomi Mi Box, Sage Mini Client, 42" Panasonic PZ800u Theater: nVidia Shield TV, mini client, Plex for movies, 120" screen. Mitsubishi HC4000. Denon X4300H. 7.4.4 speaker setup. |
#10
|
||||
|
||||
What does pressing delete in the system info screen actually do? Does it initiate a JVM garbage collection? I ask because Support asked me to do this while troubleshooting my Colossus issue.
S |
#11
|
||||
|
||||
I think so. I did it yesterday and my heap size decreased significantly. It did go back up as soon as I started going through menu's again.
__________________
SageTV Server: unRAID Docker v9, S2600CPJ, Norco 24 hot swap bay case, 2x Xeon 2670, 64 GB DDR3, 3x Colossus for DirecTV, HDHR for OTA Living room: nVidia Shield TV, Sage Mini Client, 65" Panasonic VT60 Bedroom: Xiomi Mi Box, Sage Mini Client, 42" Panasonic PZ800u Theater: nVidia Shield TV, mini client, Plex for movies, 120" screen. Mitsubishi HC4000. Denon X4300H. 7.4.4 speaker setup. |
#12
|
||||
|
||||
Quote:
It's running out of memory processing "Appaloosa.jpg". There is a slim chance that there is a problem with that .jpg so you can try deleting it to see what happens. My guess is that it's not the CPU Monitor Plugin by itself, but rather an interaction of the plugins. Try installing the Java Heap Monitor plugin so you can visually see how much Heap memory you are using. My gues is that it will be a lot. (The Java Heap Monitot plugin takes virtually zero heap memory.)
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#13
|
|||
|
|||
Sorry guys I didn't mean to imply that the CPU meter plugin was the source of the problem but I wanted to point out that after I removed both plugins then re-added the one my problem did not return. It is also possible that a combination of plugins was the root cause.
I've had all the same plugins working just fine under Sage 7.0.23 so my assumption was it was related to the update. I was less willing to uninstall the commercial detector plugin or a couple others so I thought I'd reduce my memory foot print by removing one I could live without. |
#14
|
|||
|
|||
Windows 7 64 Bit with 6 GB of physical memory in the box JVM heap size set to 1.4GB
|
#15
|
||||
|
||||
I just saw this. I'm not a Java guru but I don't think the JVM likes it when the heap is set to greater than 1000MB.
__________________
Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders. |
#16
|
||||
|
||||
In quickly looking at your log file, there is definately something with the Appolosa image. It is getting an OOM at a rate of 100+ times a second while trying to load it. This is being done from a background thread 'BGLoader2', so i'm not sure if this is sagetv or another plugin, it may be that the backgound process is going into an endless loop trying to load a bad image, and the garbage collector can't keep up.
For now, I'd definately try to blow away the image.
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#17
|
|||
|
|||
Maybe it would be a reasonable feature request for SageTV to be designed not to require arbitrary memory settings that need to be manually configured by the user.
I mean, determining ahead of time how much memory you think your application is going to use reminds me of System 7 (before it was called Mac OS 7 ). This sort of manual memory configuration should be left to the dustbin of history. If you need more memory, malloc some and let the GC return it to the OS when it's no longer needed. If you run out of RAM, the OS will decline to give it to the application when it asks for it. You should only get this error if your memory (and virtual memory) are full! What year is it again? |
#18
|
|||
|
|||
We have Seen this in diamond from time to time and it is logged. It very well could be bad images trying to load in a loop, but we haven't found the cause just yet.It is being thrown from a background thread trying to load the fanart, but the thread should be killed not sure why it is looping in your log like that.
|
#19
|
||||
|
||||
Quote:
Ironically, for system security, isolation, etc, virtual machines are becomming all the rage. I remember when Java started out, people criticized it because it was vm based. Now, we are seeing all sorts of VMs being used. The concept isn't new, it's just making a comeback Isolating processes into separate vms (whether they are java or not) will tend to lead to more stable system overall. Today, in most OSes, a rogue application can consume 100% of the memory and then cause the entire OS to fail (or become unusable). VMs sandbox processes so that doesn't happen. So when a rogue plugin in SageTV consumes all the memory of SageTV and it craps out... the OS is unaffected.... that's a good thing.
__________________
Batch Metadata Tools (User Guides) - SageTV App (Android) - SageTV Plex Channel - My Other Android Apps - sagex-api wrappers - Google+ - Phoenix Renamer Downloads SageTV V9 | Android MiniClient |
#20
|
||||
|
||||
Quote:
Quote:
__________________
SageTV Server: unRAID Docker v9, S2600CPJ, Norco 24 hot swap bay case, 2x Xeon 2670, 64 GB DDR3, 3x Colossus for DirecTV, HDHR for OTA Living room: nVidia Shield TV, Sage Mini Client, 65" Panasonic VT60 Bedroom: Xiomi Mi Box, Sage Mini Client, 42" Panasonic PZ800u Theater: nVidia Shield TV, mini client, Plex for movies, 120" screen. Mitsubishi HC4000. Denon X4300H. 7.4.4 speaker setup. Last edited by panteragstk; 03-24-2011 at 04:16 PM. |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Java error: java.lang.NullPointerException | neil.prasad | SageTV Software | 8 | 12-13-2011 07:43 PM |
SEEKER EXCEPTION THROWN:java.lang.OutOfMemoryError | Flips | SageTV Software | 9 | 04-08-2009 08:13 AM |
Placeshifter has java.lang.UnsatisfiedLinkError | vhurst | SageTV Placeshifter | 0 | 02-28-2007 01:21 AM |
java.lang.NoClassDefFoundError: | wesw02 | SageTV Software | 2 | 06-15-2004 12:15 PM |
Beta V1.2.2 Java java.lang Null Pointer Exception | hamptonhills | SageTV Beta Test Software | 1 | 03-27-2003 12:11 PM |