KB Article #194400

B2Bi will not start after upgrade with nothing in CN log

Problem

After upgrading B2Bi, the application fails to start.

The CN Console log contains errors similar to the following:

2026-07-13T09:15:43,298 - ERROR An unexpected error occurred while trying to start.
2026-07-13T09:15:43,298 - ERROR Please check your configuration
2026-07-13T09:15:43,298 - ERROR java.lang.reflect.InvocationTargetException
...
Caused by: java.lang.UnsatisfiedLinkError:
/tmp/bc-fips-jni_16189609405223149/libbc-probe.so:
failed to map segment from shared object

The Executive (EX) log may also show:

2026-07-13T09:49:09,595 - ERROR [ProcessManager] (ErrorManager.systemExit:34) - System exit with code: 0

java.lang.RuntimeException: System exit
    at com.axway.cluster.ErrorManager.systemExit(ErrorManager.java:33)
    at com.axway.cluster.nonpublic.util.NetUtil.systemExit(NetUtil.java:539)
    at com.axway.cluster.executive.ProcessManager.checkProcesses(ProcessManager.java:107)
    at com.axway.cluster.executive.ProcessManager.run(ProcessManager.java:79)

Cause

This issue occurs when the operating system temporary directory (/tmp) is mounted without execute permissions (for example, using the noexec mount option).

During startup, B2Bi extracts and loads native libraries, such as the Bouncy Castle FIPS library (libbc-probe.so), into the system temporary directory. If execute permissions are not available, the operating system prevents these libraries from being loaded, causing B2Bi startup to fail with an UnsatisfiedLinkError.

Resolution

There are two possible solutions:

  • Option 1: Allow execute permissions on the operating system temporary directory.
  • Option 2: Configure B2Bi to use an alternate temporary directory that has execute permissions.

Option 2: Configure a new temporary directory

Create a new directory (for example, /opt/new_tmp) and ensure it has the appropriate permissions.

Then modify the following files located in the interchange/conf directory on all B2Bi nodes.

1. Update

jvmarguments.xml

Under the Common to all Nodes section, add the following property:

<Property key="java.io.tmpdir">/opt/new_tmp</Property>

Replace /opt/new_tmp with the path to your new temporary directory.

2. Update

filereg.xml

Locate the following commented section:

<!-- Leave "temp" commented out to indicate that the system temporary directory should be used -->

<!-- <File name="temp" path=""/> -->

Uncomment the entry and specify the new temporary directory:

<File name="temp" path="/opt/new_tmp"/>

Replace /opt/new_tmp with your desired temporary directory.

3. Restart B2Bi

After updating both configuration files on all nodes, restart the B2Bi environment.

B2Bi will now use the alternate temporary directory when extracting native libraries, allowing startup to complete successfully.