Skip to content

ORA 3137 - malformed TTC packets - Timeouts with Oracle DBs #748

@promadmin86

Description

@promadmin86

Hi we are facing a bit of a show stopper at the moment and would be glad if anyone can help.

Describe the bug
When using the exporter on Oracle DBs we are facing regular timeouts.
Log from Oracle shows
"DDE: Problem Key 'ORA 3137 [3120]' was flood controlled
ORA-03137: malformed TTC packet from client rejected"

This happens on all the Oracle DBs we tested

This happens with version 17.1. -17.3 of sql exporter (Docker and binary)

From description by Oracle it is an issue with the driver, the connection appears to be closed too soon, then there are some packets left which the DB cant handle (TTC packets) and disables the connection for a moment for the client

To Reproduce
Steps to reproduce the behavior:

  1. Add Oracle DB in config
  2. Set Log level to Debug
  3. Wait a few minutes
  4. See "Timeout error" and "context deadline exceeded" in exporter log
  5. Look up Oracle Alerts, see above noted error

Expected behavior
No timeouts

Configuration

sql_exporter.yml
global:
scrape_timeout_offset: 500ms
min_interval: 0s
max_connections: 4
max_idle_connections: 4
max_connection_lifetime: 30m

Additional context
with version 2.8.25 (April 2025) of go-ora driver there should be a new option conn.EnableGracefulDisconnect(true), maybe this can help?
This driver is not added yet right? We couldnt find anything related in the changelogs

Kind regards

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions