Java initialization errors on Linux

Java (JVM) can fail to start and throw error messages like these:

$ java -version
Error occurred during initialization of VM
Could not reserve space for ObjectStartArray
$ java -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

There can be several reasons behind this and increasing the heap size and permgen size of the JVM often fixes this issue.

However, such errors can still occur even if the heap size and other JVM parameters have been setup correctly. In such cases, the issue is often with the system level configuration.

On Linux, this issue can occur if the virtual memory size limit is not sufficient enough. To fix this:
  • On RHEL, execute: limit vmemoryuse unlimited
  • In bash, execute: ulimit -v unlimited

Fixing sticky Control key issues with Citrix Reciever 13.0 on Ubuntu

Citrix 13.x is known to have issues on Ubuntu and other Linux flavours. One such issue is that the Control (Ctrl) key gets stuck in the Citrix Reciever session after it is pressed for the first time. This issue has been reported by several users on Citrix forums but Citrix hasn't officially addressed it so far.

To fix this issue on Ubuntu, edit these two files:
  • ~/.ICAClient/wfclient.ini 
    • Replace 'KeyboardLayout = (User Profile)' with 'KeyboardLayout = US-International' (or your preferred keyboard layout)
  • /opt/Citrix/ICAClient/config/module.ini 
    • Replace 'UseLocalIM=True' with 'UseLocalIM=False'.

If the sticky Ctrl key issue is still not fixed, update Ubuntu system settings to not show the mouse location when Ctrl key is clicked. Instructions can be found here.

If the issue still persists, try these links:

Related resources: