Postgres Compatibility
Overview
Nile's Postgres is built 100% on Postgres and is protocol and application-compatible with Postgres. However, given it is a serverless database, there are some restrictions that you should be aware of. Nile currently supports Postgres 15.
Current limitations
The table below lists all the features in Postgres that are not yet supported in Nile's Postgres. We are continuing to work on features focused on SaaS use cases. If you have any feature need, we would love to hear from you. Please add your upvote to existing feature requests or add your own on our Github discussion forum.
Statement | Description | What Nile Recommends |
---|---|---|
CREATE FUNCTION | User defined functions are not supported yet | Push the logic to the application |
CREATE TRIGGER | Triggers are not supported yet since UDF support is not tdere | We hope to support real time events soon |
CREATE SEQUENCE | ||
CREATE POLICY | Nile will have the ability to define policies through a more powerful permission system that is in progress | Would love to hear your use case for this in our github discussion forum |
CREATE ROLE | Ability to define granular roles for developers using the database | Developer roles can be supported in Nile's console when we support it |
CREATE USER | Ability to create a new developer for a database | Creating a new developer to use the database is supported in Nile's console (and API/CLI in the future) |
CREATE DATABASE | Ability to create a new databasee | You can do this from Nile's console |
Transactional writes between tenant and shared tables | Writes across a tenant and shared in the same transaction | this is not common from the users we have spoken to. Usually shared tables are loaded separately from an external source. Would love to hear your use case for this in our github discussion forum |
Foreign keys from tenant table referencing shared table | Referencing a column from a tenant table to a shared table | Would love to hear your use case for this in our github discussion forum |
Transactional writes across different tenants | Writes across two or more tenants in the same transaction | this is not common from the users we have spoken to. Most usecases have transactions with the same tenant. Would love to hear your use case for this in our github discussion forum |
Additional help
If you need additional help or have any questions, join the Nile community Discord or Github discussion forum, or send mail to support@thenile.dev.