[Java] Problem to get current reservation of JVM direct memory on macOS Big Sur

Offen Anfängerfreundlich
#349 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
62/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Veraltet
Tech-Stack
java
Bereich
testing

Rechercherichtung

Beginne mit TestReservationListener.java in der Nähe von testDirectReservationListener und führe den im Bericht angegebenen Maven-Befehl auf dem betroffenen macOS/JVM-Setup aus. Untersuche das java.nio.Bits-Feld, das für die Reservierung des direkten Speichers verwendet wird, und überprüfe, dass der Test auch im referenzierten CI-Workflow erfolgreich ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Hi Team,

Just compiling java dataset module it compile without problems but the test related to  get current reservation of JVM direct memory is failing on my local machine macOS Big Sur 11.5.2.

Command line:

 


mvn -Darrow.cpp.build.dir=../java-dist/lib clean install 

 

 

Test code:

 


/**
 * Get current reservation of jVM direct memory. Visible for testing.
 */
@VisibleForTesting
public long getCurrentDirectMemReservation() {
  try {
    final Class<?> classBits = Class.forName("java.nio.Bits");
     final Field f = classBits.getDeclaredField("reservedMemory");
    f.setAccessible(true);
    return ((AtomicLong) f.get(null)).get();
  } catch (Exception e) {
    throw new RuntimeException(e);
  }
} 

 

 

Error message:

 


[ERROR] testDirectReservationListener  Time elapsed: 0.028 s  <<< ERROR!
java.lang.RuntimeException: java.lang.NoSuchFieldException: reservedMemory
        at org.apache.arrow.dataset.jni.TestReservationListener.testDirectReservationListener(TestReservationListener.java:50)
 

 

 

If I changed from classBits.getDeclaredField("reservedMemory") to 

classBits.getDeclaredField("RESERVED_MEMORY") all the test finished without problems. Seeing this way to obtain reserved memory on Jvm.java.

 

Consider: Current test on macOS finished ok on the ci workflows.

Reporter: David Dali Susanibar Arce / @davisusanibar

Note: This issue was originally created as ARROW-15834. Please see the migration documentation for further details.

Vorherrschende Sprache
Java
Sterne
95
Forks
154
Ø Merge
2 T. 16 Std.
Gemergte PRs (30 T.)
9

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus apache/arrow-java

Alle Issues in apache/arrow-java

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.