Liquibase Enterprise was formerly known as Datical DB.
Increase the amount of RAM used by Liquibase Enterprise
When the changelog becomes large or you attempt to package/deploy a large number of files simultaneously or have extra large DML files, you may encounter RAM limitations. You might see java heap errors or other out of memory errors.
The default Xmx setting for Datical is 2048m. If your machine has more than 4096m of RAM, you can increase the Xmx setting for RAM allocation as follows.
Desktop Client (Eclipse GUI)
For the desktop client/Eclipse GUI, you can increase the Xmx setting in your datical.ini file in your Datical DB installation directory:
In <datical-install>/datical.ini
, change line -Xmx2048m to -Xmx4096m or higher.
Command Line (CLI)
There are two methods of changing the Xmx setting for the CLI. The first method using a command line option is usually preferred, because the command line option will persist no matter which version of Datical you are running. The second method of modifying Xmx in the bat or ini can be less desirable because you would need to edit the file again after each time you upgrade to a new Datical version. You can use whichever method better fits with your process or automation tools:
1. Command Line Option (recommended method)
When running a command, add the --vmargs -XmxNNNNm option to increase the RAM available. This method will persist after you upgrade to a new version of Datical. For example:
hammer groovy deployPackager.groovy pipeline=<pipeline> scm=true --vmargs -Xmx4096m
hammer deploy <dbDef> --vmargs -Xmx4096m
2. Editing .bat or .ini (alternate method)
Note that you would need to edit the file again after each time you upgrade to a new version of Datical. The instructions are different for Windows versus Linux:
Linux edit hammer-bin.ini
For Linux systems: In <datical-install>/repl/hammer-bin.ini
, change line -Xmx2048m to -Xmx4096m or higher.
Windows edit hammer.bat
For Windows systems: In <datical-install>/repl/hammer.bat
, change the set __cmd
line to include RAM allocation in an -XmxNNNNm option. Example:
set __cmd="%JAVA_EXEC%" %VMARGS% -Xmx4096m -jar "%INSTALL_DIR%plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar" %*
Update GC Overhead Limit
For GC overhead issues when Java is attempting to run a garbage collector and is having issues to free up memory due to a long running process.
There is an option to pass in the --vmargs -XX:-UseGCOverheadLimit parameter to possibly avoid the issue.
For run-time hammer command, example: hammer groovy deployPackager.groovy pipeline=pipline1 scm=true
--vmargs -XX:-UseGCOverheadLimit
For CLI:
Linux systems: In <datical-install>/repl/hammer-bin.ini
, add line to add parameter -XX:-UseGCOverheadLimit
Windows systems: in <datical-install>/repl/hammer.bat, change the set __cmd line to include the -XX:-UseGCOverheadLimit option.
For example: set __cmd="%JAVA_EXEC%" %VMARGS% -XX:-UseGCOverheadLimit -jar "%INSTALL_DIR%plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar" %*
Copyright © Liquibase 2012-2022 - Proprietary and Confidential