[PR #5162] [CLOSED] Added Oracle database connector with node-oracledb thin mode #5330

Closed
opened 2026-06-05 15:21:00 -04:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Mintplex-Labs/anything-llm/pull/5162
Author: @anjumsohail
Created: 3/7/2026
Status: Closed

Base: masterHead: feature/oracle-thin-support


📝 Commits (10+)

  • 19b4c68 Add Oracle database connector with node-oracledb thin mode
  • 7a067ea Delete extras/build.txt
  • cc72fe3 Delete extras/oracle-support.md
  • b7244e2 Clean up comments in system.js
  • d2b2562 Delete frontend/src/pages/Admin/Agents/SQLConnectorSelection/icons/oracle.png
  • ff966d1 Uploaded Resized 330x330 Oracle Logo
  • 3d3d3fb Refactor Oracle connector to load driver on demand
  • 93d6e2d Delete README.md
  • 77ed7d6 Restore README.md to original state from Base Repository
  • cefc134 Merge branch 'Mintplex-Labs:master' into feature/oracle-thin-support

📊 Changes

7 files changed (+133 additions, -4 deletions)

View changed files

📝 frontend/src/models/system.js (+1 -1)
📝 frontend/src/pages/Admin/Agents/SQLConnectorSelection/DBConnection.jsx (+3 -0)
📝 frontend/src/pages/Admin/Agents/SQLConnectorSelection/SQLConnectionModal.jsx (+7 -0)
frontend/src/pages/Admin/Agents/SQLConnectorSelection/icons/oracle.jpg (+0 -0)
📝 server/package.json (+1 -0)
server/utils/agents/aibitat/plugins/sql-agent/SQLConnectors/Oracle.js (+115 -0)
📝 server/utils/agents/aibitat/plugins/sql-agent/SQLConnectors/index.js (+6 -3)

📄 Description

Pull Request Type

  • feat (New feature)
  • 🐛 fix (Bug fix)
  • ♻️ refactor (Code refactoring without changing behavior)
  • 💄 style (UI style changes)
  • 🔨 chore (Build, CI, maintenance)
  • 📝 docs (Documentation updates)

Relevant Issues

N/A

Description

This PR introduces Oracle database support for AnythingLLM by implementing an Oracle connector using the node-oracledb driver in Thin mode.

The implementation allows users to connect to Oracle databases without requiring the Oracle Instant Client, making it compatible with containerized deployments such as Docker.

Key features:

  • Oracle database connector implementation
  • node-oracledb Thin mode support (no native client dependency)
  • Compatible with the existing SQL connector architecture
  • Supports standard Oracle connection strings

Tested against:

  • Oracle Database 19c
  • Oracle Database 21c

The implementation follows the existing database connector structure used by other supported databases to maintain consistency and backward compatibility.

Visuals (if applicable)

anythingllm1 anythingllm2

Additional Information

Oracle support is implemented using class-based connector OR node-oracledb Thin mode to avoid requiring Oracle Instant Client libraries, which simplifies deployment in Docker and air-gapped environments.

The implementation does not affect existing database connectors and keeps Oracle support optional.

Developer Validations

  • I ran yarn lint from the root of the repo & committed changes
  • Relevant documentation has been updated (if applicable)
  • I have tested my code functionality
  • Docker build succeeds locally

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Mintplex-Labs/anything-llm/pull/5162 **Author:** [@anjumsohail](https://github.com/anjumsohail) **Created:** 3/7/2026 **Status:** ❌ Closed **Base:** `master` ← **Head:** `feature/oracle-thin-support` --- ### 📝 Commits (10+) - [`19b4c68`](https://github.com/Mintplex-Labs/anything-llm/commit/19b4c683bc331cdc4a0d5f1b77263fa05060d56c) Add Oracle database connector with node-oracledb thin mode - [`7a067ea`](https://github.com/Mintplex-Labs/anything-llm/commit/7a067ea63f9007d7a3f6687a92f046baa71c1a38) Delete extras/build.txt - [`cc72fe3`](https://github.com/Mintplex-Labs/anything-llm/commit/cc72fe31e17a9522c5f2713e99107d2489760624) Delete extras/oracle-support.md - [`b7244e2`](https://github.com/Mintplex-Labs/anything-llm/commit/b7244e2c6b9cce4cd856749c1e262f20344e2d8e) Clean up comments in system.js - [`d2b2562`](https://github.com/Mintplex-Labs/anything-llm/commit/d2b25621269bb2d817fb21bfad34023aa594126e) Delete frontend/src/pages/Admin/Agents/SQLConnectorSelection/icons/oracle.png - [`ff966d1`](https://github.com/Mintplex-Labs/anything-llm/commit/ff966d184def86c6d3113f6ee5e344e0a16b6208) Uploaded Resized 330x330 Oracle Logo - [`3d3d3fb`](https://github.com/Mintplex-Labs/anything-llm/commit/3d3d3fb28ebfcba3c90b7d454c8212aecdea2b2d) Refactor Oracle connector to load driver on demand - [`93d6e2d`](https://github.com/Mintplex-Labs/anything-llm/commit/93d6e2d7bfd390854b5285e4a815e4b4c80a4ee6) Delete README.md - [`77ed7d6`](https://github.com/Mintplex-Labs/anything-llm/commit/77ed7d6cc33d48eb11648c8f8acf9c3d8721bdf2) Restore README.md to original state from Base Repository - [`cefc134`](https://github.com/Mintplex-Labs/anything-llm/commit/cefc134be1b4e97de7a520352a735aa730c6334e) Merge branch 'Mintplex-Labs:master' into feature/oracle-thin-support ### 📊 Changes **7 files changed** (+133 additions, -4 deletions) <details> <summary>View changed files</summary> 📝 `frontend/src/models/system.js` (+1 -1) 📝 `frontend/src/pages/Admin/Agents/SQLConnectorSelection/DBConnection.jsx` (+3 -0) 📝 `frontend/src/pages/Admin/Agents/SQLConnectorSelection/SQLConnectionModal.jsx` (+7 -0) ➕ `frontend/src/pages/Admin/Agents/SQLConnectorSelection/icons/oracle.jpg` (+0 -0) 📝 `server/package.json` (+1 -0) ➕ `server/utils/agents/aibitat/plugins/sql-agent/SQLConnectors/Oracle.js` (+115 -0) 📝 `server/utils/agents/aibitat/plugins/sql-agent/SQLConnectors/index.js` (+6 -3) </details> ### 📄 Description ### Pull Request Type <!-- For change type, change [ ] to [x]. --> - [x] ✨ feat (New feature) - [ ] 🐛 fix (Bug fix) - [ ] ♻️ refactor (Code refactoring without changing behavior) - [ ] 💄 style (UI style changes) - [ ] 🔨 chore (Build, CI, maintenance) - [ ] 📝 docs (Documentation updates) ### Relevant Issues N/A ### Description This PR introduces Oracle database support for AnythingLLM by implementing an Oracle connector using the node-oracledb driver in Thin mode. The implementation allows users to connect to Oracle databases without requiring the Oracle Instant Client, making it compatible with containerized deployments such as Docker. Key features: - Oracle database connector implementation - node-oracledb Thin mode support (no native client dependency) - Compatible with the existing SQL connector architecture - Supports standard Oracle connection strings Tested against: - Oracle Database 19c - Oracle Database 21c The implementation follows the existing database connector structure used by other supported databases to maintain consistency and backward compatibility. ### Visuals (if applicable) <img width="1337" height="547" alt="anythingllm1" src="https://github.com/user-attachments/assets/1e51d046-3f82-4d9a-bf11-4343b7656006" /> <img width="731" height="803" alt="anythingllm2" src="https://github.com/user-attachments/assets/8b7e2add-1bc3-4710-9651-cd4e19560b3c" /> ### Additional Information Oracle support is implemented using class-based connector OR node-oracledb Thin mode to avoid requiring Oracle Instant Client libraries, which simplifies deployment in Docker and air-gapped environments. The implementation does not affect existing database connectors and keeps Oracle support optional. ### Developer Validations <!-- All of the applicable items should be checked. --> - [x] I ran `yarn lint` from the root of the repo & committed changes - [x] Relevant documentation has been updated (if applicable) - [x] I have tested my code functionality - [x] Docker build succeeds locally --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-06-05 15:21:00 -04:00
yindo closed this issue 2026-06-05 15:21:00 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Mintplex-Labs/anything-llm#5330