2014-05-25 5 views
12

Ich habe eine Methode, die DB trifft und holt viele Datensätze in den Speicher für die Verarbeitung. Nachdem ich die Aufzeichnungen holen und bevor ich Verarbeitung starten, erhalte ich die folgende Protokollmeldung. Was heißt das ?Zuordnungsfehler in Java

164575.034: [GC (Allocation Failure) 4937664K->3619624K(5602816K), 0.0338580 secs] 

Optionen:

java.opts=-d64 -Xmx8g -XX:+PrintGCTimeStamps -verbose:gc -XX:MaxPermSize=512m -XX:+UseParallelGC -XX:+UseParallelOldGC 
+3

Es sieht aus wie es heißt, eine GC aufgrund eines Zuordnungsfehler gestartet heißt es in der aktuellen Generation aus dem Raum lief. Welche Plattform benutzen Sie? – Lee

+0

Was sind Ihre JVM-Argumente? – Vipin

+0

java.opts = -d64 -Xmx8g -XX: + PrintGCTimeStamps -verbose: gc -XX: MaxPermSize = 512m -XX: + VerwendungParallelGC -XX: + VerwendungParallelOldGC – dumper

Antwort

11

Es im Grunde nur Ihnen sagt, dass es hatte GC laufen zusätzlichen Speicher zuweisen, ist es nicht anders in den Speicher passen. Es ist also nur ein Grund für GC.