Skip to content

feat(sql-agent): Added Oracle database connector with node-oracledb thin mode#5211

Open
anjumsohail wants to merge 2 commits intoMintplex-Labs:masterfrom
anjumsohail:feature/oracle-support
Open

feat(sql-agent): Added Oracle database connector with node-oracledb thin mode#5211
anjumsohail wants to merge 2 commits intoMintplex-Labs:masterfrom
anjumsohail:feature/oracle-support

Conversation

@anjumsohail
Copy link
Copy Markdown

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:

  • Added OracleConnector implementation
  • Integrated oracledb (Thin mode)
  • Extended SQLEngine typedef
  • Updated frontend engine enum and UI selector
  • Registered connector in getDBClient()
  • Added Oracle metadata queries
  • Docker compatible (no Instant Client required)
  • Will not bloat the docker image

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

…n mode

- Added OracleConnector implementation
- Integrated oracledb (Thin mode)
- Extended SQLEngine typedef
- Updated frontend engine enum and UI selector
- Registered connector in getDBClient()
- Added Oracle metadata queries
- Docker compatible (no Instant Client required)
- Will not bloat the docker image
@anjumsohail
Copy link
Copy Markdown
Author

Discarded Previous Branch and PR , and created a New PR

@timothycarambat timothycarambat self-assigned this Mar 16, 2026
@timothycarambat timothycarambat added the PR:needs review Needs review by core team label Mar 16, 2026
@timothycarambat timothycarambat removed their assignment Apr 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR:needs review Needs review by core team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants