gortiz commented on PR #16912:
URL: https://github.com/apache/pinot/pull/16912#issuecomment-3617398358

   > Trying to understand the change. When -XX:-G1UseAdaptiveIHOP is not set, 
does it prevent per-thread memory/CPU utilization from being reported? Per the 
argument name, seems they are unrelated
   
   @Jackie-Jiang I think the PR description is wrong. `-G1UseAdaptiveIHOP` 
doesn't affect whether we can estimate the amount of allocated memory. The 
reason we need it is that if the % of used memory is below IHOP, the JVM won't 
collect old generation. The OOM protection algorithm assumes the % of used 
memory is mostly alive memory, but as long as the % of memory is below IHOP, 
the used memory may be mostly garbage. As a result, if our thresholds are 
smaller than IHOP, we may be throttling or killing queries while the % of alive 
memory is actually very low. With adaptive IHOP, the actual % of memory that 
fires old GCs is undefined.
   
   I think what we should do here is to verify that the IHOP is lower than our 
thresholds. This means:
   - If the JVM uses adaptive IHOP, the check should fail
   - If the JVM doesn't use IHOP:
       - If IHOP is higher than our thresholds, the check should fail
       - In other case, the check should succeed.
   
    If the check fails, we should log an error message and continue working as 
before (ie if the check was executed during startup, run without OOM 
protection, if the check failed when a config was changed, log an error and 
continue using the old config)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to