java.lang.OutOfMemoryError: Java heap space Hadoop Ubuntu

java.lang.OutOfMemoryError: Java heap space Hadoop Ubuntu

我在我的应用程序中使用 Hadoop,但就在程序退出之前我收到此错误 java.lang.OutOfMemoryError: Java heap space 我已经修改了 mapred-site.xml 并向其中添加了 属性

<property> <name>mapred.child.java.opts</name> <value>-Xmx4096m</value> </property>

但还是出现异常。 我在终端中使用了这个命令:java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|PermSize|ThreadStackSize' 结果是这样的:

uintx AdaptivePermSizeWeight                    = 20              {product}           
     intx CompilerThreadStackSize                   = 0               {pd product}        
    uintx ErgoHeapSizeLimit                         = 0               {product}           
    uintx HeapSizePerGCThread                       = 87241520        {product}           
    uintx InitialHeapSize                          := 1054841728      {product}           
    uintx LargePageHeapSizeThreshold                = 134217728       {product}           
    uintx MaxHeapSize                              := 16877879296     {product}           
    uintx MaxPermSize                               = 174063616       {pd product}        
    uintx PermSize                                  = 21757952        {pd product}        
     intx ThreadStackSize                           = 1024            {pd product}        
     intx VMThreadStackSize                         = 1024            {pd product}        
java version "1.6.0_31"
OpenJDK Runtime Environment (IcedTea6 1.13.3) (6b31-1.13.3-1ubuntu1~0.12.04.2)
OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)

如果有人可以请告知如何解决此问题。

您的问题是memory leak

您应该考虑检查您的代码以了解导致资源泄漏的原因。通常,这是由于 GC 无法从您的内存中删除数据的情况造成的。