Very limited memory for git difftool

I was resolving merge conflicts for a modest XML file of ~2500 lines. I was surprised when it ran out of memory; looking at diffFiles.sh I was surprised to see that the memory was limited to 512 MB (-Xmx512m). Shouldn't that default to a significantly higher value for the 64-bit install of Oxygen? I believe most of the vmoptions files set a default memory of ~4 GB. I changed my local copy but I know the next minor update will overwrite my changes. Thanks, Lee

looking at diffFiles.sh I was surprised to see that the memory was limited to 512 MB (-Xmx512m). 512 MB of memory is more than enough for most diff operations. But it is
Hi, true that you can easily run out of memory when comparing larger files. The diffFiles tool can have multiple instances running at the same time, so if you give it too much heap memory and leave a few instances running, it can consume a lot of system memory.
I believe most of the vmoptions files set a default memory of ~4 GB. That is the maximum Java heap for the IDE applications like Oxygen XML Editor/Author/Developer which require a significant amount of memory to run all the tools within the same Java VM. All the other separate tools (Diff, SVN) are configured by default to use 512 MB of Java heap.
I changed my local copy but I know the next minor update will overwrite my changes. For Linux and Windows installations (made with the installer wizard), *if you use the native launchers, diffFiles/diffFiles.exe* that have .vmoptions files, *it is possible to customize the Java flags with a user added vmoptions file that is not overwritten when updating.* For diffFiles you can create a file named 'custom_diffFiles.vmoptions' and specify there the -Xmx argument. Maybe try -Xmx1g (1 GB) or -Xmx2g (2GB). 4 GB is a bit too much for a tool that can have multiple instances. You will have to use the 'diffFiles' launcher/script for this to work (not 'diffFiles.sh').
Note that *the .bat/.sh scripts do not use vmoptions files**at this time *(v21). So, if you are using these scripts you will have to modify the scripts themselves and yes, these are overwritten when updating. PS: For all Windows/Linux native launchers there is the possibility to create a 'custom_<launcherName>.vmoptions' file with your custom Java flags/arguments (one per line) for that launcher. If you want to add the same custom flags for all the native launchers, create a file named 'custom_commons.vmoptions'. I would advise using this for more general flags, not for Java heap (-Xmx). Regards, Adrian Adrian Buza oXygen XML Editor and Author Support On 29.03.2019 02:41, Hart, Lee wrote:
I was resolving merge conflicts for a modest XML file of ~2500 lines. I was surprised when it ran out of memory; looking at diffFiles.sh I was surprised to see that the memory was limited to 512 MB (-Xmx512m). Shouldn’t that default to a significantly higher value for the 64-bit install of Oxygen? I believe most of the vmoptions files set a default memory of ~4 GB.
I changed my local copy but I know the next minor update will overwrite my changes.
Thanks,
Lee
_______________________________________________ oXygen-user mailing list oXygen-user@oxygenxml.com https://www.oxygenxml.com/mailman/listinfo/oxygen-user
participants (2)
-
Hart, Lee
-
Oxygen XML Editor Support (Adrian Buza)