ETL工具kettle,在老版设计后,使用新版时,居然发生了内存溢出的错误:
出现: java heap
或者 OutOfMemory等字样
这是kettle分配的内存不足。
在kettle的运行路径中,用文本编辑器打开Spoon.bat,找到:
REM ******************************************************************
REM ** Set java runtime options **
REM ** Change 256m to higher values in case you run out of memory. **
REM ******************************************************************
set OPT=-Xmx1024m -Xms512m -XX:MaxPermSize=2048m "-Djava.library.path=%LIBSPATH%" "-DKETTLE_HOME=%KETTLE_HOME%" "-DKETTLE_REPOSITORY=%KETTLE_REPOSITORY%" "-DKETTLE_USER=%KETTLE_USER%" "-DKETTLE_PASSWORD=%KETTLE_PASSWORD%" "-DKETTLE_PLUGIN_PACKAGES=%KETTLE_PLUGIN_PACKAGES%"
"-DKETTLE_LOG_SIZE_LIMIT=%KETTLE_LOG_SIZE_LIMIT%"
字段,将其中-Xmx1024m加大最好是256的整数倍,你懂得。
我是修改的了MaxPermSize最大值,运行时最大,也可以。