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最大值,運行時最大,也可以。