Reference

The compatibility layer.

PostgreSQL is a complete database but it is not Oracle. The compatibility layer closes the gap with battle-tested community extensions plus a small set of Trekport-authored packages for cases the community has not covered.

What ships

ExtensionCategorySourceWhat it covers
orafceOracle dialectCommunityDECODE, NVL, NVL2, NULLIF, MONTHS_BETWEEN, ADD_MONTHS, INSTR, LENGTHB, TO_CHAR family, DBMS_OUTPUT, DBMS_RANDOM, DBMS_ASSERT, UTL_FILE, and Oracle-style date arithmetic.
pg_cronSchedulingCommunityReplaces DBMS_SCHEDULER and DBMS_JOB. Cron-style schedules that survive cluster restart.
httpNetworkingCommunityNative PostgreSQL HTTP client. Replaces UTL_HTTP and UTL_URL. Supports headers, methods, and TLS configuration.
pgcryptoCryptoCommunityCryptographic primitives. Maps DBMS_CRYPTO, OWA hash helpers, and password digest patterns to PostgreSQL equivalents.
pg_trgmSearchCommunityTrigram-based fuzzy text search. Closes the gap for Oracle Text predicates used in fuzzy lookups and similarity ranking.
btree_gistIndexingCommunityGIST index support for B-tree-indexable types. Enables exclusion constraints used by Oracle range patterns.
file_fdwExternal dataCommunityFile-backed foreign data wrapper. Read-side alternative for Oracle external tables.
trekport_compatEngine-specificTrekportTrekport-authored shims for cases the community has not covered. Versioned, pgTAP-tested, shipped per release.

How the deployer wires it

The compatibility layer is installed in phase 2 of the deployment, immediately after schemas and roles. Every downstream conversion can assume the extensions are present. The engine never emits an Oracle function call without the supporting extension being available. See deployment phases for the full sequence.

Install snippet (the deployer does this automatically)

phase-02-compat.sqlsql
CREATE EXTENSION IF NOT EXISTS orafce;
CREATE EXTENSION IF NOT EXISTS pgcrypto;
CREATE EXTENSION IF NOT EXISTS pg_trgm;
CREATE EXTENSION IF NOT EXISTS btree_gist;
CREATE EXTENSION IF NOT EXISTS pg_cron;
CREATE EXTENSION IF NOT EXISTS http;
CREATE EXTENSION IF NOT EXISTS file_fdw;

-- Engine-specific:
CREATE EXTENSION IF NOT EXISTS trekport_compat;

Configuration

The set of installed extensions is configurable. Customers running on a managed PostgreSQL with a restricted extension allowlist can opt specific extensions out. The engine then routes the affected conversions through alternate paths or surfaces them as out-of-scope through the classifier.

Related reading