You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Sam Whittle (Jira)" <ji...@apache.org> on 2022/03/24 13:51:00 UTC

[jira] [Created] (BEAM-14167) Jamm exceptions "JVM prevents jamm from accessing subgraph - cache sizes may be underestimated"

Sam Whittle created BEAM-14167:
----------------------------------

             Summary: Jamm exceptions "JVM prevents jamm from accessing subgraph - cache sizes may be underestimated"
                 Key: BEAM-14167
                 URL: https://issues.apache.org/jira/browse/BEAM-14167
             Project: Beam
          Issue Type: Bug
          Components: sdk-java-core
            Reporter: Sam Whittle
            Assignee: Luke Cwik


Can we fix these somehow? At a minimum we should catch them when weighing and not cache the state.

"java.lang.RuntimeException: java.lang.RuntimeException: java.lang.reflect.InaccessibleObjectException: Unable to make field private final byte[] java.lang.String.value accessible: module java.base does not "opens java.lang" to unnamed module @39529185
	at org.github.jamm.MemoryMeterBase.measureDeep(MemoryMeterBase.java:129)
	at org.apache.beam.fn.harness.Caches.weigh(Caches.java:64)
	at org.apache.beam.fn.harness.Caches.findWeight(Caches.java:202)
	at org.apache.beam.fn.harness.Caches.access$600(Caches.java:46)
	at org.apache.beam.fn.harness.Caches$CompositeKey.<init>(Caches.java:363)
	at org.apache.beam.fn.harness.Caches$CompositeKey.<init>(Caches.java:355)
	at org.apache.beam.fn.harness.Caches$CompositeKeyPrefix.valueKey(Caches.java:323)
	at org.apache.beam.fn.harness.Caches$SubCache.computeIfAbsent(Caches.java:259)
	at org.apache.beam.fn.harness.FnHarness$1.apply(FnHarness.java:259)
	at org.apache.beam.fn.harness.FnHarness$1.apply(FnHarness.java:252)
	at org.apache.beam.fn.harness.control.ProcessBundleHandler.createBundleProcessor(ProcessBundleHandler.java:700)
	at org.apache.beam.fn.harness.control.ProcessBundleHandler.lambda$processBundle$0(ProcessBundleHandler.java:490)
	at org.apache.beam.fn.harness.control.ProcessBundleHandler$BundleProcessorCache.get(ProcessBundleHandler.java:895)
	at org.apache.beam.fn.harness.control.ProcessBundleHandler.processBundle(ProcessBundleHandler.java:486)
	at org.apache.beam.fn.harness.control.BeamFnControlClient.delegateOnInstructionRequestType(BeamFnControlClient.java:151)
	at org.apache.beam.fn.harness.control.BeamFnControlClient$InboundObserver.lambda$onNext$0(BeamFnControlClient.java:116)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.RuntimeException: java.lang.reflect.InaccessibleObjectException: Unable to make field private final byte[] java.lang.String.value accessible: module java.base does not "opens java.lang" to unnamed module @39529185
	at org.github.jamm.MemoryMeterBase.declaredClassFields0(MemoryMeterBase.java:246)
	at org.github.jamm.MemoryMeterBase.access$000(MemoryMeterBase.java:15)
	at org.github.jamm.MemoryMeterBase$1.computeValue(MemoryMeterBase.java:24)
	at org.github.jamm.MemoryMeterBase$1.computeValue(MemoryMeterBase.java:20)
	at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
	at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
	at java.base/java.lang.ClassValue.get(ClassValue.java:116)
	at org.github.jamm.MemoryMeterBase.declaredClassFields(MemoryMeterBase.java:219)
	at org.github.jamm.MemoryMeterBase.measureDeep(MemoryMeterBase.java:119)
	... 18 more
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field private final byte[] java.lang.String.value accessible: module java.base does not "opens java.lang" to unnamed module @39529185
	at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
	at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
	at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
	at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
	at org.github.jamm.MemoryMeterBase.declaredClassFields0(MemoryMeterBase.java:241)
	... 26 more
"



--
This message was sent by Atlassian Jira
(v8.20.1#820001)