Max Gekk created SPARK-60363:
--------------------------------

             Summary: Raise PROCESSES of the Oracle docker test container to 
avoid ORA-12516
                 Key: SPARK-60363
                 URL: https://issues.apache.org/jira/browse/SPARK-60363
             Project: Spark
          Issue Type: Bug
          Components: Tests
    Affects Versions: 5.0.0
            Reporter: Max Gekk


`org.apache.spark.sql.jdbc.v2.OracleIntegrationSuite` fails intermittently in 
the "scan with aggregate push-down: ... without DISTINCT" tests (COVAR_SAMP, 
CORR, REGR_*) with:

{noformat}
java.sql.SQLException: ORA-12516: Cannot connect to database. Listener at host 
... port ... does not have a protocol handler for TCP ready or registered for 
service freepdb1.
{noformat}

A short burst of tests fails and the suite then recovers. It is known as an 
"Oracle docker infra flake" in PR CI runs and is usually re-run.

Cause: the database never runs out of processes (at most about 92 of 
PROCESSES=200 are in use). The listener blocks the service when the process 
count the database last reported to it, plus the connections it has handed off 
since, reaches PROCESSES. The database reports only every few seconds, and the 
suite opens about 770 short-lived connections in about 40 seconds (each 
numPartitions=4 query opens one connection per partition), so a burst of about 
110 connections within one report window blocks the service for a couple of 
seconds.

Fix: raise PROCESSES of the test container (to 1000) before the database 
starts. This is a different failure from the startup ORA-12541 addressed by 
SPARK-57603 and SPARK-57606.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to