From 379f9da98cb36003b6694acf2ee6ef5e7758e0d0 Mon Sep 17 00:00:00 2001 From: Mateusz Rzeszutek Date: Tue, 12 Oct 2021 19:54:40 +0200 Subject: [PATCH] Back VirtualField with a volatile field (#4355) --- .../javaagent/tooling/field/RealFieldInjector.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java index 6cb17b65ca83..b85fcad19c14 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/field/RealFieldInjector.java @@ -124,7 +124,10 @@ public void visitEnd() { if (!foundField) { cv.visitField( // Field should be transient to avoid being serialized with the object. - Opcodes.ACC_PRIVATE | Opcodes.ACC_TRANSIENT | Opcodes.ACC_SYNTHETIC, + Opcodes.ACC_PRIVATE + | Opcodes.ACC_VOLATILE + | Opcodes.ACC_TRANSIENT + | Opcodes.ACC_SYNTHETIC, fieldName, fieldType.getDescriptor(), null,