Skip to content

Dependencies: Install Oracle Instant Client with dnf#523

Merged
bari12 merged 2 commits into
rucio:masterfrom
Geogouz:dnf-oracle-instantclient-23ai
Jul 9, 2026
Merged

Dependencies: Install Oracle Instant Client with dnf#523
bari12 merged 2 commits into
rucio:masterfrom
Geogouz:dnf-oracle-instantclient-23ai

Conversation

@Geogouz

@Geogouz Geogouz commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Fixes #522.

This installs Oracle Instant Client with dnf in the service and probe images so Oracle thick mode remains available.
It also removes the stale probes/oic.rpm.

Geogouz added 2 commits July 7, 2026 17:47
Also drop the stale vendored oic.rpm now that the probe image installs Instant Client with dnf.
@Geogouz
Geogouz requested review from bari12 and dchristidis July 7, 2026 15:55
@Geogouz Geogouz self-assigned this Jul 7, 2026
@Geogouz Geogouz added dependencies Pull requests that update a dependency file Database labels Jul 7, 2026
@Geogouz
Geogouz marked this pull request as draft July 7, 2026 15:59
@Geogouz

Geogouz commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

I am leaving this as a draft till I test also Rucio against a CERN-like Oracle DB (to verify the DB operations work as expected).

P.S. do we know what version ATLAS is using exactly?

@Geogouz

Geogouz commented Jul 8, 2026

Copy link
Copy Markdown
Contributor Author

@bari12 I performed the following test:

  • Installed Oracle DB (container-registry.oracle.com/database/enterprise:19.19.0.0)
  • Local Oracle DB was set to require encryption/checksum.
  • Built server, daemons, init, ui, probes (Rucio 40.4.1 from PyPI in images)
  • Installed/loaded Instant Client (23.26.2).
  • python-oracledb (3.4.0) switched to thick mode in all images.
  • cx_Oracle (8.3.0) loaded Instant Client in probes.
  • Thin mode failed as expected: DPY-6005.
  • Raw thick mode connected from server, daemons, init, ui.
  • Rucio SQLAlchemy get_engine() connected in thick mode for server, daemons, init, ui.
  • Probe cx_Oracle connected and run select 1 from dual.
  • DB banners confirmed AES256 encryption and SHA512 checksumming.
  • Rucio SQLAlchemy write/read/drop worked: write_read_value: ok.

So although this is not a test against a real CERN/ATLAS deployment, I would say it is quite a strong local validation for the thick-client/NNE problem. Maybe a future cleanup could migrate probes from cx_Oracle to python-oracledb, but that is a separate issue not bringing currently problems.

I am going ahead and remove the draft state.

@Geogouz
Geogouz marked this pull request as ready for review July 8, 2026 20:11
@bari12
bari12 merged commit 174b970 into rucio:master Jul 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dependencies: Restore cleanly Oracle Instant Client for thick-mode Oracle connections

2 participants