Show Navigation
Conversation
Notices
-
How many times would you expect a full gc in a 7 hour window? #java
-
@musicman I would expect that to vary, based on how many objects it creates / allocates.
-
@musicman By that, I mean I don't think there is a set number. It will depend on the program and how actively it is used.
-
I should have specified, a well-functioning java app. At some level, too many full gcs is going to be bad. I was trying to figure out that number. Suffice it to say, my research suggests that my customer is WAY over the limit.
-
@musicman I understand what you're getting at. I don't think there is a hard and fast rule. But if gc pauses are noticeably affecting the program, there's likely something wrong.
Now the question is, is the issue appearing in software you support, or in some custom code that $CUSTOMER wrote? (And also, is it because of a poorly done program or because $PROGRAM is being used in ways it isn't designed to handle?)
-
Sorry I can't be more specific, but I haven't used #Java in my work in over a decade.
-
customer is running a 72-hour test. I'm not sure if they are trying to test a DDoS or what, but the test seems to reliably fail around the 30 hour mark. Now, I haven't seen anything from the actual test. I think there is probably a security or application team involved and I am working with the systems team.
In any case, Infinispan is known to not survive gc because as a cache, it has a lot timeout. My thought was maybe they were having full gcs every 30 hours or so, but turns out they had 1689 full gcs in 7 hours. I told them that if they were trying to test full gcs, they needed to not test that often because it's not a realistic test. As far as the log was concerned, they were not actually able to evacuate properly, so that's one reason the gcs kept happening. They old gave the JVM 8GB RAM though. None of this makes any sense!
idk what they ended up changing, but they are running a new 72-hour test now, so something I said must have made sense to them.