Supported extensions
The full catalogue — the eleven you can install with CREATE EXTENSION, what is deferred with a reason, and what is never offered with a reason.
The complete extension catalogue for a Balta service. Check your application against it before you migrate rather than after: a missing extension turns a restore into a partial one.
Extensions covers how to install one and what the refusals mean.
Customer-installable
Trusted extensions. Install with CREATE EXTENSION, from your managed elevated role, with no
request to us.
| Extension | What it is |
|---|---|
pgcrypto | Cryptographic functions |
uuid-ossp | UUID generation |
pg_trgm | Trigram matching and similarity search |
citext | Case-insensitive text type |
hstore | Key-value type |
btree_gin | B-tree operator classes for GIN indexes |
btree_gist | B-tree operator classes for GiST indexes |
ltree | Hierarchical tree-like data type |
unaccent | Accent-removing text search dictionary |
tablefunc | Crosstab and related table functions |
intarray | Integer array functions and operators |
That table is the set. It is checked against the packaged builds on our own host class, so a row here is an extension a database owner has actually created rather than one we expect to work.
Deferred, with the reason
| Extension | Why not |
|---|---|
postgres_fdw | Opens outbound network connections. Needs an egress policy we have not written |
dblink | Same reason |
pgvector | Not trusted in the packaged build, so a database owner cannot create it |
| PostGIS | Under evaluation. Large, stateful, with its own upgrade path. Supporting it badly is worse than not supporting it |
Never offered
Untrusted procedural languages, file_fdw, and anything that reaches the host filesystem or network
directly. These hand a database process capabilities the isolation model exists to deny it. There is
no plan for them and there will not be one.
What you will see
SELECT name, default_version, installed_version, comment
FROM pg_available_extensions
ORDER BY name;This lists what the host has packaged, which is a longer list than what you may install. Trust, not availability, is what decides:
SELECT name, version, trusted
FROM pg_available_extension_versions
WHERE name = 'pg_trgm';trusted reads t for each of the eleven above. An extension whose trusted reads f is one only
a superuser can create, and you do not have one.
Asking for one
Ask, and you get one of three answers: yes with a date, no with a reason, or under evaluation with what is being evaluated.
Contact support any time by email or from your dashboard. Every service is monitored around the clock.