I have a situation when all of a sudden a really long GC pause occurs and I need to find out what is the source of the sudden memory allocation. The long GC pause (around 30 seconds) causes the pod to fail several K8s health checks in a row and the pod gets restarted, without OOM actually happening. I want
Tag: jvm
How to dynamically cast an object (of class Object) to the method return type using ASM?
What I want to do is to modify a method using ASM: I push an object (of class Object) to the stack I want to cast that object to the return type of that method Return that casted object. My code in …
Will an application made in JDK 14 run on a machine that has Java version 8 installed?
My question stems from this… when you google “download java” the first result is this: https://www.java.com/en/download/ This prompts you to install java 8. If I’m creating an application using JDK 14, can I expect that application to run on a clients computer that has installed java from the link above (Java 8)? Additionally, what is that link installing that’s different
would conversion from java code to jvm byte code considered compiling or transpiling?
Compiling is a process to conversion from one level of abstraction to lower level. Meanwhile transpiling is a process of conversion from one level of abstraction to another at same level like converting java code to Kotlin/python. That is my understanding of the two process. Could someone please explain it in terms of java code and jvm byte code. And
Can JVM bytecode running on the GraalVM be instrumented by a custom `TruffleInstrument`?
I would like to write a Truffle instrument which can instrument Java programs (or at least JVM bytecode programs) when they are run on GraalVM. I have been investigating different ways to perform fine-grained instrumentation of Java programs to support a runtime verification project. To me, manipulating Truffle AST nodes sounds much more attractive than the more traditional Java instrumentation
How to properly set the G1GC options for a server with 22G heap
I’m setting up a new JAVA server, the heap size is set to 22G, and would use the G1GC algorithm. I’ve read all the oracle documents, and believe this is what we need, but still have a few questions: 1> What -XX:G1HeapRegionSize should be ? Must the number be a power of two? If so, should I set 8M to
Why is SerialGC chosen over G1GC?
I am running Java on very similar VMs and I can’t find the explanation why the SerialGC is chosen over G1GC in one case. It’s the same Java version, same OS, same VM instance type on AWS, and I suspect the only difference is container settings but I do not know how to pinpoint what changes. Is there a way
Kafka Best Practices + how to set recommended setting for JVM
A recommended setting for JVM looks like following my question is – How do I set the above Java options for Kafka? I know for sure that we can set but not sure if we can append the whole line to KAFKA_HEAP_OPTS variable reference – https://community.hortonworks.com/articles/80813/kafka-best-practices-1.html Answer you can check kafka-run-class.sh, here you can see what env variables kafka uses
Does JVM Stack have no direct references to objects but reference to constant pool?
I am investigating JVM architecture and its working behind the scenes. I have heard a lot of times that stack stores method return types, operands, local variables and references to objects. But while reading the Oracle specification I have found the picture where drawn that stack frame has no references to objects directly but the reference to the constant pool.
Resilience4j circuit-breaker ring bit buffer size configuration
I’m looking to implement resilience4j circuit breaking library into a web application. My application talks to two services and each service receives anywhere between 20 and 150 requests per second depending on the time of day. Resilience4j provides you with the ability to define a config for each circuit breaker which lets you configure the thresholds and ring buffer size.