Skip to main content

Celonis Product Documentation

Troubleshooting JDBC database connections

If there are issues with your JDBC database connections, consider the following solutions:

Diagnose unsuccessful connection using Telnet

If the connection between your database and the Celonis Platform is unsuccessful, we recommend using Telnet to test whether the required network ports are open:

  1. Ensure that Telnet is enabled by pressing the Windows key + R to open the Run dialog box.

  2. In the dialog box, enter the below and then click OK.

    pkgmgr /iu:"TelnetClient"
    run_telnet.png
  3. When enabled, open the Run dialog box again and enter:

    cmd
  4. In the Command Prompt, enter telnet <IP address>443, replacing <P address> with the IP address of your Celonis Platform team's cluster and check the results as described below.

    Then, enter telnet <team domain> 443 ,replacing <team domain>; with yourteam.yourrealm.celonis.cloud and check the results as described below.

    • If you see a blank cursor, the port is open and not the root cause of a connection issue.

    • If you see an error using the IP address, reach out to the network administrator to ensure that port 443 is open in the firewall.

    • If you see an error using the team domain but no error using the IP address, the IP address is not resolved. Reach out to the network administrator to ensure that your firewall is not blocking the DNS request before it can be resolved (potentially because the current setup only allows for IP access).

Exclude root causes using DBeaver

To exclude root causes, use DBeaver and follow these steps on your extractor server:

  1. Select Database - New Connection.

  2. Select the database connection type for the database you want to connect with Celonis and then click Next.

  3. Select Yes to download/install the driver for the selected database.

  4. Enter the parameters required to connect with your database.

  5. Select Next.

  6. Select Test Connection.

    If the connection test is not successful, that indicates that the connection issue's root cause is not associated with the Celonis extractor.

Common JDBC errors and solutions

When configuring a JDBC connection, you might experience the following error messages:

Database type

Error

Recommended solution

All

Error retrieving metadata (SyntaxErrorException, illegal zero-length identifier)

Validate your connection configuration, esp. the application-local.yml file.

All

Java.net.BindException: Address already in use

Another application is already running on the same port as the Extractor. Disable listening on the port to resolve the issue.

All

java.lang.NoClassDefFoundError: Could not initialize class oracle.jdbc.OracleDriver

Download the JDBC driver yourself and add it to the startup script.

All

DatabaseApplication has been compiled by a more recent version of the Java Runtime (class file version 55.0)

Java Runtime on Extractor server is outdated. Update Java Runtime to a version ≥ 55 or update JDK to a version≥ 11.

All

Error loading resource (unsupported type for column)

Reach out to Support, ideally providing the connector logs which can be found in your local JDBC Extractor Package folder.

All

Uplink could not connect: 'I/O error on POST request for "https://teamdomain.cluster.celonis.cloud/uplink/api/public/uplink": PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target', waiting 13000ms before retrying --EOM--

See: Fixing "unable to find valid certification path" errors.

All

Uplink could not connect (UnknownHostException)

Test whether port is open using telnet with team domainname. See: Diagnose unsuccessful connection using Telnet.

All

java.lang.UnsatisfiedLinkError: /tmp/snappy-1.1.7-d52747f8-f5a0-471a-a468-826b186cff94-libsnappyjava.so: /tmp/snappy-1.1.7-d52747f8-f5a0-471a-a468-826b186cff94-libsnappyjava.so: failed to map segment from shared object: Operation not permitted.

The extractor does not have permission to write to the /tmp/ directory. Make sure that these permissions are ensured

All

Unable to find valid certification path to requested target

There are two potential root causes:

  • The Java package does not come with the root and intermediate CA certificates required to communicate with the Celonis Platform over HTTPS.

  • Your network overrides the standard certificates with its own when communicating with the Celonis Cloud.

See: Fixing "unable to find valid certification path" errors.

All

Uplink could not connect: 'I/O error on POST request for "https://teamdomain.cluster.celonis.cloud/uplink/api/public/uplink": Unsupported or unrecognized SSL message; nested exception is javax.net.ssl.SSLException: Unsupported or unrecognized SSL message'

This is most probably cause by a proxy which overrides the SSL certificate, please make sure both certificates public and private from letsencrypt are used as described here: Fixing "unable to find valid certification path" errors.

All

ExecutionMessage-FAIL: Error loading resource DSC9REL1. java.lang.NoClassDefFoundError: Could not initialize class org.xerial.snappy.Snappy

This most commonly happens on Linux. Please check if the “Noexec” flag is enabled and in case it is, remove it as described here:

OPSwat - How do I check if 'noexec' flag exists on a Linux OS?

All

Uplink could not connect (Unexpected 302)

Uplink not connected/JDBC URL changed; validate your configuration.

All

Uplink could not connect (in general)

Validate your connection configuration in the Celonis Platform.

All

Mkdirs failed to create file:/tmp/CEL_CON_TEMP/

Your extractor's server disk is out of space. Delete content in \temp\CEL_CON_TEMP, then re-run the extraction, then check if any parquet file is left over in that directory and if the issue persists.

All

Connection refused: connect; nested exception is java.net.ConnectException: Connection refused: connect". How can this be fixed?

check that your on premise Extractor server can reach the Celonis Platform. Specifically, please verify that you can reach the URL https://[team].[realm].celonis.cloud in the browser of your server - if not, please check your firewall settings and no proxy is blocking the connection between the Extractor and the Celonis Platform - if it is needed, see Proxy settings with on premise Extractors.

Oracle

ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

This will be resolved using custom JDBC string in the following format:

This will be resolved using custom JDBC string in the following format:

jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =<hostname>)(PORT = <Port>)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = <DB Name>) (SID = <DB Name>)))

SAP HANA

Connection test failed, please check the Data Connection's configuration and ensure that the system is running: Unexpected error when creating database connection: Cannot create PoolableConnectionFactory (SAP DBTech JDBC: Cannot connect to jdbc:sap://e446a7-2991-42e8-a4be-2a7d0fa50.hana.prod-eu20.hanacloud.ondemand.com:443/ [Object is closed: com.sap.db.jdbc.SecureChannelSession@32287e12 e44640a7-2991-42e8-a4be-2a7d0f348a50.hana.prod-eu20.hanacloud.ondemand.com:443 ConnectionID:0 SessionID:0 on sun.nio.ch.UnixAsynchronousSocketChannelImpl[connected local=/100.96.15.191:48982 remote=e44640a7-2991-42e8-a4be-2a7d0f348a50.hana.prod-eu20.hanacloud.ondemand.com/40.114.161.74:443]].)

The Celonis Platform IPs' are not whitelisted, check here for the IPs and whitelist the correct ones depending on whether you are using a direct or a cloud connection

Snowflake

Error: Error loading resource SAP_P2P_FACT. No active warehouse was selected in the current session. Select an active warehouse with the 'use warehouse' command.

The user is missing the permissions to the table shown in the log. Please ensure the respective permissions are set on the Snowflake side.