[hadoop] java lang OutOfMemoryError: PermGen space


Bermain dengan data yang cukup besar di dalam hadoop, terkadang menyebabkan error “java lang OutOfMemoryError: PermGen space“. Setelah googling, saya mendapatkan bahwa hal ini disebabkan setting dari JVM. Nah, bagaimana cara mengubah setting JVM di hadoop ? Terpaksa buka-buka setiap file konfigurasi dari hadoop. Saya temukan hadoop-env.sh yang berisi tentang setting untuk JVM beserta Java Heap.
Ubah pada bagian :
# The maximum amount of heap to use, in MB. Default is 1000.
export HADOOP_HEAPSIZE=2000
# Extra Java runtime options.  Empty by default.
export HADOOP_OPTS=-XX:MaxPermSize 512m

Kode diatas melakukan setting java heap 2000MB dan maksimum PermGen Space 512 MB.
Catatan : nilai maksimum PermGen Space tidak boleh lebih besar dari Java Heap

Iklan
  1. klo masih error juga, kemungkinan code nya punya memory leak , yg ga akan sembuh berapapun MaxPermSize nya di-set. Next step: code profile 🙂

  1. No trackbacks yet.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s