IBM Support

When trying to log in to DataStage Designer or Director client, the message "Failed to load the Java Virtual Machine" appears

Troubleshooting


Problem

When trying to log in to either Designer or Director, the following message appears: Failed to load the Java Virtual Machine. The most common cause of this problem is a failure of the Java Virtual Machine to allocate enough memory. Check the memory settings in the file: \ASBNode\conf\proxy.xml are appropriately configured. Other possible reasons for this failure are that one or more dependent JARs are not present or that an incompatible version of the .NET framework is being loaded. Set the following environment variables to get extended error information: XMOG_TRACE_LEVEL=TraceVerbose XMOG_TRACE_FILE=c:\xmogtrace.txt For more information contact IBM

Cause

The file named machine.config got corrupted and contained malformed XML.

Diagnosing The Problem

In C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\ directory, the file called machine.config might have malformed XML.The uploaded machine.config file would appear to be corrupt it contains mal-formed XML

For example,

<system.data>
<DbProviderFactories>
<add name="IBM DB2 for i .NET Provider" invariant="IBM.Data.DB2.iSeries" description=".NET Framework Data Provider for IBM i" type="IBM.Data.DB2.iSeries.iDB2Factory, IBM.Data.DB2.iSeries, Version=12.0.0.0, Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26" />

<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/></DbProviderFactories>

<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/></DbProviderFactories>
</system.data>

It should look like this after correction of malformed XML:

<system.data>
<DbProviderFactories>
<add name="IBM DB2 for i .NET Provider" invariant="IBM.Data.DB2.iSeries" description=".NET Framework Data Provider for IBM i" type="IBM.Data.DB2.iSeries.iDB2Factory, IBM.Data.DB2.iSeries, Version=12.0.0.0, Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26" />

<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
</DbProviderFactories>
</system.data>

Another thing to check would be the proxy.xml file under \ASBNode\conf\ directory for the value of the maximum heap size value for DSClient.JvmSetting.

Another option would be to set the following environment variables as System Environment variables on Windows and recreate the issue and send in the xmogtrace.txt file. 

XMOG_TRACE_LEVEL=TraceVerbose

XMOG_TRACE_FILE=c:\xmogtrace.txt

Resolving The Problem

To resolve the issue:
  1. Make a copy of the file called machine.config
  2. Edit the original machine.config file
  3. Remove the malformed XML
  4. Save the machine.config file
Or, in the proxy.xml file, under this section:

-<DSClient.JvmSettings>

<add value="384" key="MaximumHeapSize"/>

</DSClient.JvmSettings>

Change 384 to 320 and test things out.

[{"Product":{"code":"SSVSEF","label":"IBM InfoSphere DataStage"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"--","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.7;8.5;8.1;8.0.1;9.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
22 May 2020

UID

swg21621831