diff --git a/packages/doltgres/content/reference/sql-support/supported-commands.md b/packages/doltgres/content/reference/sql-support/supported-commands.md index 07390197..091e808c 100644 --- a/packages/doltgres/content/reference/sql-support/supported-commands.md +++ b/packages/doltgres/content/reference/sql-support/supported-commands.md @@ -2,245 +2,245 @@ title: Supported SQL Commands --- -# Basic SQL +# Basic SQL ## Data Description (DDL) -| SQL Commands | Parses | Works | Notes and limitations | -|:-------------------------|:------:|:-----:|:-----------------------| -| ALTER TABLE | ✅ | ❌ | | -| CREATE DATABASE | ✅ | 🟠 | | -| CREATE TABLE | ✅ | 🟠 | | -| DROP DATABASE | ✅ | 🟠 | | -| DROP TABLE | ✅ | 🟠 | | +| SQL Commands | Parses | Works | Notes and limitations | +| :-------------- | :----: | :---: | :-------------------- | +| ALTER TABLE | ✅ | ❌ | | +| CREATE DATABASE | ✅ | 🟠 | | +| CREATE TABLE | ✅ | 🟠 | | +| DROP DATABASE | ✅ | 🟠 | | +| DROP TABLE | ✅ | 🟠 | | ## Data Manipulation (DML) -| SQL Commands | Parses | Works | Notes and limitations | -|:-------------------------|:------:|:-----:|:-----------------------| -| CALL | ✅ | ✅ | | -| DELETE | 🟠 | 🟠 | | -| INSERT | 🟠 | 🟠 | | -| SELECT | 🟠 | 🟠 | | -| UPDATE | 🟠 | 🟠 | | -| VALUES | 🟠 | 🟠 | | +| SQL Commands | Parses | Works | Notes and limitations | +| :----------- | :----: | :---: | :-------------------- | +| CALL | ✅ | ✅ | | +| DELETE | 🟠 | 🟠 | | +| INSERT | 🟠 | 🟠 | | +| SELECT | 🟠 | 🟠 | | +| UPDATE | 🟠 | 🟠 | | +| VALUES | 🟠 | 🟠 | | -# All SQL +# All SQL ## Access management statements -| SQL Commands | Parses | Works | Notes and limitations | -|:-------------------------|:------:|:-----:|:-----------------------| -| ALTER DEFAULT PRIVILEGES | ✅ | ❌ | | -| ALTER GROUP | ❌ | ❌ | | -| ALTER ROLE | ❌ | ❌ | | -| ALTER USER | ❌ | ❌ | | -| ALTER USER MAPPING | ❌ | ❌ | | -| CREATE GROUP | 🟠 | ❌ | | -| CREATE ROLE | 🟠 | ❌ | | -| CREATE USER | 🟠 | ❌ | | -| CREATE USER MAPPING | ❌ | ❌ | | -| DROP GROUP | ✅ | ❌ | | -| DROP ROLE | ✅ | ❌ | | -| DROP USER | ✅ | ❌ | | -| DROP USER MAPPING | ❌ | ❌ | | -| GRANT | ✅ | ❌ | | -| REASSIGN OWNED | ❌ | ❌ | | -| REVOKE | ✅ | ❌ | | +| SQL Commands | Parses | Works | Notes and limitations | +| :----------------------- | :----: | :---: | :-------------------- | +| ALTER DEFAULT PRIVILEGES | ✅ | ❌ | | +| ALTER GROUP | ❌ | ❌ | | +| ALTER ROLE | ❌ | ❌ | | +| ALTER USER | ❌ | ❌ | | +| ALTER USER MAPPING | ❌ | ❌ | | +| CREATE GROUP | 🟠 | ❌ | | +| CREATE ROLE | 🟠 | ❌ | | +| CREATE USER | 🟠 | ❌ | | +| CREATE USER MAPPING | ❌ | ❌ | | +| DROP GROUP | ✅ | ❌ | | +| DROP ROLE | ✅ | ❌ | | +| DROP USER | ✅ | ❌ | | +| DROP USER MAPPING | ❌ | ❌ | | +| GRANT | ✅ | ❌ | | +| REASSIGN OWNED | ❌ | ❌ | | +| REVOKE | ✅ | ❌ | | ## Data definition statements | SQL Commands | Parses | Works | Notes and limitations | -|:---------------------------------|:------:|:-----:|:----------------------| -| ALTER AGGREGATE | ✅ | ❌ | | -| ALTER COLLATION | ✅ | ❌ | | -| ALTER CONVERSION | ✅ | ❌ | | -| ALTER DATABASE | ✅ | ❌ | | -| ALTER DOMAIN | ✅ | ❌ | | -| ALTER EVENT TRIGGER | ❌ | ❌ | | -| ALTER EXTENSION | ❌ | ❌ | | -| ALTER FOREIGN DATA WRAPPER | ❌ | ❌ | | -| ALTER FOREIGN TABLE | ❌ | ❌ | | -| ALTER FUNCTION | ✅ | ❌ | | -| ALTER INDEX | ✅ | ❌ | | -| ALTER LANGUAGE | ✅ | ❌ | | -| ALTER LARGE OBJECT | ❌ | ❌ | | -| ALTER MATERIALIZED VIEW | ✅ | ❌ | | -| ALTER OPERATOR | ❌ | ❌ | | -| ALTER OPERATOR CLASS | ❌ | ❌ | | -| ALTER OPERATOR FAMILY | ❌ | ❌ | | -| ALTER POLICY | ❌ | ❌ | | -| ALTER PROCEDURE | ✅ | ❌ | | -| ALTER PUBLICATION | ❌ | ❌ | | -| ALTER ROUTINE | ❌ | ❌ | | -| ALTER RULE | ❌ | ❌ | | -| ALTER SCHEMA | ✅ | ❌ | | -| ALTER SEQUENCE | ✅ | ❌ | | -| ALTER SERVER | ❌ | ❌ | | -| ALTER STATISTICS | ❌ | ❌ | | -| ALTER SUBSCRIPTION | ❌ | ❌ | | -| ALTER SYSTEM | ❌ | ❌ | | -| ALTER TABLE | ✅ | ❌ | | -| ALTER TABLESPACE | ❌ | ❌ | | -| ALTER TEXT SEARCH CONFIGURATION | ❌ | ❌ | | -| ALTER TEXT SEARCH DICTIONARY | ❌ | ❌ | | -| ALTER TEXT SEARCH PARSER | ❌ | ❌ | | -| ALTER TEXT SEARCH TEMPLATE | ❌ | ❌ | | -| ALTER TRIGGER | ✅ | ❌ | | -| ALTER TYPE | ✅ | ❌ | | -| ALTER VIEW | ✅ | ❌ | | -| COMMENT | ✅ | ❌ | | -| CREATE ACCESS METHOD | ❌ | ❌ | | -| CREATE AGGREGATE | ✅ | ❌ | | -| CREATE CAST | ❌ | ❌ | | -| CREATE COLLATION | ❌ | ❌ | | -| CREATE CONVERSION | ❌ | ❌ | | -| CREATE DATABASE | ✅ | 🟠 | | -| CREATE DOMAIN | ✅ | ❌ | | -| CREATE EVENT TRIGGER | ❌ | ❌ | | -| CREATE EXTENSION | ✅ | ❌ | | -| CREATE FOREIGN DATA WRAPPER | ❌ | ❌ | | -| CREATE FOREIGN TABLE | ❌ | ❌ | | -| CREATE FUNCTION | ✅ | ❌ | | -| CREATE INDEX | ✅ | ❌ | | -| CREATE LANGUAGE | ✅ | ❌ | | -| CREATE MATERIALIZED VIEW | ✅ | ❌ | | -| CREATE OPERATOR | ❌ | ❌ | | -| CREATE OPERATOR CLASS | ❌ | ❌ | | -| CREATE OPERATOR FAMILY | ❌ | ❌ | | -| CREATE POLICY | ❌ | ❌ | | -| CREATE PROCEDURE | ✅ | ❌ | | -| CREATE PUBLICATION | ❌ | ❌ | | -| CREATE RULE | ❌ | ❌ | | -| CREATE SCHEMA | ✅ | ❌ | | -| CREATE SEQUENCE | ✅ | ❌ | | -| CREATE SERVER | ❌ | ❌ | | -| CREATE STATISTICS | ❌ | ❌ | | -| CREATE SUBSCRIPTION | ❌ | ❌ | | -| CREATE TABLE | ✅ | 🟠 | | -| CREATE TABLESPACE | ❌ | ❌ | | -| CREATE TEXT SEARCH CONFIGURATION | ❌ | ❌ | | -| CREATE TEXT SEARCH DICTIONARY | ❌ | ❌ | | -| CREATE TEXT SEARCH PARSER | ❌ | ❌ | | -| CREATE TEXT SEARCH TEMPLATE | ❌ | ❌ | | -| CREATE TRANSFORM | ❌ | ❌ | | -| CREATE TRIGGER | ✅ | ❌ | | -| CREATE TYPE | ✅ | ❌ | | -| CREATE VIEW | ✅ | 🟠 | | -| DROP ACCESS METHOD | ❌ | ❌ | | -| DROP AGGREGATE | ✅ | ❌ | | -| DROP CAST | ❌ | ❌ | | -| DROP COLLATION | ❌ | ❌ | | -| DROP CONVERSION | ❌ | ❌ | | -| DROP DATABASE | ✅ | 🟠 | | -| DROP DOMAIN | ✅ | ❌ | | -| DROP EVENT TRIGGER | ❌ | ❌ | | -| DROP EXTENSION | ✅ | ❌ | | -| DROP FOREIGN DATA WRAPPER | ❌ | ❌ | | -| DROP FOREIGN TABLE | ❌ | ❌ | | -| DROP FUNCTION | ✅ | ❌ | | -| DROP INDEX | ✅ | 🟠 | | -| DROP LANGUAGE | ✅ | ❌ | | -| DROP MATERIALIZED VIEW | ✅ | 🟠 | | -| DROP OPERATOR | ❌ | ❌ | | -| DROP OPERATOR CLASS | ❌ | ❌ | | -| DROP OPERATOR FAMILY | ❌ | ❌ | | -| DROP OWNED | ❌ | ❌ | | -| DROP POLICY | ❌ | ❌ | | -| DROP PROCEDURE | ✅ | ❌ | | -| DROP PUBLICATION | ❌ | ❌ | | -| DROP ROUTINE | ❌ | ❌ | | -| DROP RULE | ❌ | ❌ | | -| DROP SCHEMA | ✅ | ❌ | | -| DROP SEQUENCE | ✅ | ❌ | | -| DROP SERVER | ❌ | ❌ | | -| DROP STATISTICS | ❌ | ❌ | | -| DROP SUBSCRIPTION | ❌ | ❌ | | -| DROP TABLE | ✅ | 🟠 | | -| DROP TABLESPACE | ❌ | ❌ | | -| DROP TEXT SEARCH CONFIGURATION | ❌ | ❌ | | -| DROP TEXT SEARCH DICTIONARY | ❌ | ❌ | | -| DROP TEXT SEARCH PARSER | ❌ | ❌ | | -| DROP TEXT SEARCH TEMPLATE | ❌ | ❌ | | -| DROP TRANSFORM | ❌ | ❌ | | -| DROP TRIGGER | ✅ | 🟠 | | -| DROP TYPE | ✅ | ❌ | | -| DROP VIEW | ✅ | 🟠 | | -| SECURITY LABEL | ❌ | ❌ | | +| :------------------------------- | :----: | :---: | :-------------------- | +| ALTER AGGREGATE | ✅ | ❌ | | +| ALTER COLLATION | ✅ | ❌ | | +| ALTER CONVERSION | ✅ | ❌ | | +| ALTER DATABASE | ✅ | ❌ | | +| ALTER DOMAIN | ✅ | ❌ | | +| ALTER EVENT TRIGGER | ❌ | ❌ | | +| ALTER EXTENSION | ❌ | ❌ | | +| ALTER FOREIGN DATA WRAPPER | ❌ | ❌ | | +| ALTER FOREIGN TABLE | ❌ | ❌ | | +| ALTER FUNCTION | ✅ | ❌ | | +| ALTER INDEX | ✅ | ❌ | | +| ALTER LANGUAGE | ✅ | ❌ | | +| ALTER LARGE OBJECT | ❌ | ❌ | | +| ALTER MATERIALIZED VIEW | ✅ | ❌ | | +| ALTER OPERATOR | ❌ | ❌ | | +| ALTER OPERATOR CLASS | ❌ | ❌ | | +| ALTER OPERATOR FAMILY | ❌ | ❌ | | +| ALTER POLICY | ❌ | ❌ | | +| ALTER PROCEDURE | ✅ | ❌ | | +| ALTER PUBLICATION | ❌ | ❌ | | +| ALTER ROUTINE | ❌ | ❌ | | +| ALTER RULE | ❌ | ❌ | | +| ALTER SCHEMA | ✅ | ❌ | | +| ALTER SEQUENCE | ✅ | ❌ | | +| ALTER SERVER | ❌ | ❌ | | +| ALTER STATISTICS | ❌ | ❌ | | +| ALTER SUBSCRIPTION | ❌ | ❌ | | +| ALTER SYSTEM | ❌ | ❌ | | +| ALTER TABLE | ✅ | ❌ | | +| ALTER TABLESPACE | ❌ | ❌ | | +| ALTER TEXT SEARCH CONFIGURATION | ❌ | ❌ | | +| ALTER TEXT SEARCH DICTIONARY | ❌ | ❌ | | +| ALTER TEXT SEARCH PARSER | ❌ | ❌ | | +| ALTER TEXT SEARCH TEMPLATE | ❌ | ❌ | | +| ALTER TRIGGER | ✅ | ❌ | | +| ALTER TYPE | ✅ | ❌ | | +| ALTER VIEW | ✅ | ❌ | | +| COMMENT | ✅ | ❌ | | +| CREATE ACCESS METHOD | ❌ | ❌ | | +| CREATE AGGREGATE | ✅ | ❌ | | +| CREATE CAST | ❌ | ❌ | | +| CREATE COLLATION | ❌ | ❌ | | +| CREATE CONVERSION | ❌ | ❌ | | +| CREATE DATABASE | ✅ | 🟠 | | +| CREATE DOMAIN | ✅ | ❌ | | +| CREATE EVENT TRIGGER | ❌ | ❌ | | +| CREATE EXTENSION | ✅ | ❌ | | +| CREATE FOREIGN DATA WRAPPER | ❌ | ❌ | | +| CREATE FOREIGN TABLE | ❌ | ❌ | | +| CREATE FUNCTION | ✅ | ❌ | | +| CREATE INDEX | ✅ | ❌ | | +| CREATE LANGUAGE | ✅ | ❌ | | +| CREATE MATERIALIZED VIEW | ✅ | ❌ | | +| CREATE OPERATOR | ❌ | ❌ | | +| CREATE OPERATOR CLASS | ❌ | ❌ | | +| CREATE OPERATOR FAMILY | ❌ | ❌ | | +| CREATE POLICY | ❌ | ❌ | | +| CREATE PROCEDURE | ✅ | ❌ | | +| CREATE PUBLICATION | ❌ | ❌ | | +| CREATE RULE | ❌ | ❌ | | +| CREATE SCHEMA | ✅ | ❌ | | +| CREATE SEQUENCE | ✅ | ❌ | | +| CREATE SERVER | ❌ | ❌ | | +| CREATE STATISTICS | ❌ | ❌ | | +| CREATE SUBSCRIPTION | ❌ | ❌ | | +| CREATE TABLE | ✅ | 🟠 | | +| CREATE TABLESPACE | ❌ | ❌ | | +| CREATE TEXT SEARCH CONFIGURATION | ❌ | ❌ | | +| CREATE TEXT SEARCH DICTIONARY | ❌ | ❌ | | +| CREATE TEXT SEARCH PARSER | ❌ | ❌ | | +| CREATE TEXT SEARCH TEMPLATE | ❌ | ❌ | | +| CREATE TRANSFORM | ❌ | ❌ | | +| CREATE TRIGGER | ✅ | ❌ | | +| CREATE TYPE | ✅ | ❌ | | +| CREATE VIEW | ✅ | 🟠 | | +| DROP ACCESS METHOD | ❌ | ❌ | | +| DROP AGGREGATE | ✅ | ❌ | | +| DROP CAST | ❌ | ❌ | | +| DROP COLLATION | ❌ | ❌ | | +| DROP CONVERSION | ❌ | ❌ | | +| DROP DATABASE | ✅ | 🟠 | | +| DROP DOMAIN | ✅ | ❌ | | +| DROP EVENT TRIGGER | ❌ | ❌ | | +| DROP EXTENSION | ✅ | ❌ | | +| DROP FOREIGN DATA WRAPPER | ❌ | ❌ | | +| DROP FOREIGN TABLE | ❌ | ❌ | | +| DROP FUNCTION | ✅ | ❌ | | +| DROP INDEX | ✅ | 🟠 | | +| DROP LANGUAGE | ✅ | ❌ | | +| DROP MATERIALIZED VIEW | ✅ | 🟠 | | +| DROP OPERATOR | ❌ | ❌ | | +| DROP OPERATOR CLASS | ❌ | ❌ | | +| DROP OPERATOR FAMILY | ❌ | ❌ | | +| DROP OWNED | ❌ | ❌ | | +| DROP POLICY | ❌ | ❌ | | +| DROP PROCEDURE | ✅ | ❌ | | +| DROP PUBLICATION | ❌ | ❌ | | +| DROP ROUTINE | ❌ | ❌ | | +| DROP RULE | ❌ | ❌ | | +| DROP SCHEMA | ✅ | ❌ | | +| DROP SEQUENCE | ✅ | ❌ | | +| DROP SERVER | ❌ | ❌ | | +| DROP STATISTICS | ❌ | ❌ | | +| DROP SUBSCRIPTION | ❌ | ❌ | | +| DROP TABLE | ✅ | 🟠 | | +| DROP TABLESPACE | ❌ | ❌ | | +| DROP TEXT SEARCH CONFIGURATION | ❌ | ❌ | | +| DROP TEXT SEARCH DICTIONARY | ❌ | ❌ | | +| DROP TEXT SEARCH PARSER | ❌ | ❌ | | +| DROP TEXT SEARCH TEMPLATE | ❌ | ❌ | | +| DROP TRANSFORM | ❌ | ❌ | | +| DROP TRIGGER | ✅ | 🟠 | | +| DROP TYPE | ✅ | ❌ | | +| DROP VIEW | ✅ | 🟠 | | +| SECURITY LABEL | ❌ | ❌ | | ## Data manipulation statements | SQL Commands | Parses | Works | Notes and limitations | -|:--------------------------|:------:|:-----:|:----------------------| -| CALL | ✅ | ✅ | | -| CLOSE | ❌ | ❌ | | -| CREATE TABLE AS | ✅ | ❌ | | -| CLUSTER | ❌ | ❌ | | -| COPY | ❌ | ❌ | | -| DECLARE | ❌ | ❌ | | +| :------------------------ | :----: | :---: | :-------------------- | +| CALL | ✅ | ✅ | | +| CLOSE | ❌ | ❌ | | +| CREATE TABLE AS | ✅ | ❌ | | +| CLUSTER | ❌ | ❌ | | +| COPY | ❌ | ❌ | | +| DECLARE | ❌ | ❌ | | | DELETE | 🟠 | 🟠 | | -| DO | ❌ | ❌ | | -| FETCH | ❌ | ❌ | | -| IMPORT FOREIGN SCHEMA | ❌ | ❌ | | +| DO | ❌ | ❌ | | +| FETCH | ❌ | ❌ | | +| IMPORT FOREIGN SCHEMA | ❌ | ❌ | | | INSERT | 🟠 | 🟠 | | -| LOAD | ❌ | ❌ | | -| MERGE | ❌ | ❌ | | -| MOVE | ❌ | ❌ | | -| REFRESH MATERIALIZED VIEW | ✅ | ❌ | | -| REINDEX | ❌ | ❌ | | +| LOAD | ❌ | ❌ | | +| MERGE | ❌ | ❌ | | +| MOVE | ❌ | ❌ | | +| REFRESH MATERIALIZED VIEW | ✅ | ❌ | | +| REINDEX | ❌ | ❌ | | | SELECT | 🟠 | 🟠 | | -| SELECT INTO | ❌ | ❌ | | +| SELECT INTO | ❌ | ❌ | | | TRUNCATE | 🟠 | 🟠 | | | UPDATE | 🟠 | 🟠 | | -| VACUUM | ❌ | ❌ | | +| VACUUM | ❌ | ❌ | | | VALUES | 🟠 | 🟠 | | ## Prepared statements | SQL Commands | Parses | Works | Notes and limitations | -|:-------------|:------:|:-----:|:----------------------| -| DEALLOCATE | ✅ | ❌ | | -| PREPARE | ✅ | ❌ | | -| EXECUTE | ✅ | ❌ | | +| :----------- | :----: | :---: | :-------------------- | +| DEALLOCATE | ✅ | ❌ | | +| PREPARE | ✅ | ❌ | | +| EXECUTE | ✅ | ❌ | | ## Session management statements | SQL Commands | Parses | Works | Notes and limitations | -|:--------------------------|:------:|:-----:|:----------------------| -| DISCARD | 🟠 | ❌ | | -| RESET | ✅ | ❌ | | -| SET | ✅ | 🟠 | | -| SET CONSTRAINTS | ✅ | ❌ | | -| SET ROLE | ✅ | ❌ | | -| SET SESSION AUTHORIZATION | ✅ | ❌ | | -| SET TRANSACTION | 🟠 | ❌ | | -| SHOW | ✅ | 🟠 | | +| :------------------------ | :----: | :---: | :-------------------- | +| DISCARD | 🟠 | ❌ | | +| RESET | ✅ | ❌ | | +| SET | ✅ | 🟠 | | +| SET CONSTRAINTS | ✅ | ❌ | | +| SET ROLE | ✅ | ❌ | | +| SET SESSION AUTHORIZATION | ✅ | ❌ | | +| SET TRANSACTION | 🟠 | ❌ | | +| SHOW | ✅ | 🟠 | | ## Transactional statements | SQL Commands | Parses | Works | Notes and limitations | -|:----------------------|:------:|:-----:|:----------------------| -| ABORT | ✅ | ✅ | | +| :-------------------- | :----: | :---: | :-------------------- | +| ABORT | ✅ | ✅ | | | BEGIN | 🟠 | 🟠 | | -| CHECKPOINT | ❌ | ❌ | | -| COMMIT | ✅ | ✅ | | -| COMMIT PREPARED | ❌ | ❌ | | -| END | ✅ | ✅ | | -| LISTEN | ❌ | ❌ | | -| LOCK | ❌ | ❌ | | -| NOTIFY | ❌ | ❌ | | -| PREPARE TRANSACTION | ❌ | ❌ | | -| RELEASE SAVEPOINT | ✅ | ✅ | | -| ROLLBACK | ✅ | ✅ | | -| ROLLBACK PREPARED | ❌ | ❌ | | -| ROLLBACK TO SAVEPOINT | ✅ | ✅ | | -| SAVEPOINT | ✅ | ✅ | | +| CHECKPOINT | ❌ | ❌ | | +| COMMIT | ✅ | ✅ | | +| COMMIT PREPARED | ❌ | ❌ | | +| END | ✅ | ✅ | | +| LISTEN | ❌ | ❌ | | +| LOCK | ❌ | ❌ | | +| NOTIFY | ❌ | ❌ | | +| PREPARE TRANSACTION | ❌ | ❌ | | +| RELEASE SAVEPOINT | ✅ | ✅ | | +| ROLLBACK | ✅ | ✅ | | +| ROLLBACK PREPARED | ❌ | ❌ | | +| ROLLBACK TO SAVEPOINT | ✅ | ✅ | | +| SAVEPOINT | ✅ | ✅ | | | START TRANSACTION | 🟠 | 🟠 | | -| UNLISTEN | ❌ | ❌ | | +| UNLISTEN | ❌ | ❌ | | ## Utility statements | SQL Commands | Parses | Works | Notes and limitations | -|:-------------|:------:|:-----:|:----------------------| -| ANALYZE | ❌ | ❌ | | -| EXPLAIN | ❌ | ❌ | | +| :----------- | :----: | :---: | :-------------------- | +| ANALYZE | ❌ | ❌ | | +| EXPLAIN | ❌ | ❌ | | diff --git a/packages/doltgres/content/reference/sql-support/supported-types.md b/packages/doltgres/content/reference/sql-support/supported-types.md index ad48ad05..cb34f48a 100644 --- a/packages/doltgres/content/reference/sql-support/supported-types.md +++ b/packages/doltgres/content/reference/sql-support/supported-types.md @@ -106,16 +106,16 @@ For example, `timestamp` takes in a precision, but does not enforce it. | SQL Type Name | Implemented | | :---------------------- | :---------: | | any | ❌ | -| anyarray | 🟠 | +| anyarray | ✅ | | anycompatible | ❌ | | anycompatiblearray | ❌ | | anycompatiblemultirange | ❌ | | anycompatiblenonarray | ❌ | | anycompatiblerange | ❌ | -| anyelement | ❌ | +| anyelement | ✅ | | anyenum | ❌ | | anymultirange | ❌ | -| anynonarray | ❌ | +| anynonarray | ✅ | | anyrange | ❌ | | cstring | ❌ | | event_trigger | ❌ | @@ -139,14 +139,14 @@ See detailed list in the [Postgres docs](https://www.postgresql.org/docs/current | :------------ | :-------- | | oid | ✅ | | xid | 🟠 | -| regclass | ❌ | +| regclass | ✅ | | regcollation | ❌ | | regconfig | ❌ | | regdictionary | ❌ | | regnamespace | ❌ | | regoper | ❌ | | regoperator | ❌ | -| regproc | ❌ | +| regproc | ✅ | | regprocedure | ❌ | | regrole | ❌ | -| regtype | ❌ | +| regtype | ✅ | diff --git a/packages/doltgres/content/reference/sql-support/system-catalog-schema.md b/packages/doltgres/content/reference/sql-support/system-catalog-schema.md index ac4477a1..0d746db4 100644 --- a/packages/doltgres/content/reference/sql-support/system-catalog-schema.md +++ b/packages/doltgres/content/reference/sql-support/system-catalog-schema.md @@ -168,34 +168,34 @@ See detailed list in the [Postgres docs](https://www.postgresql.org/docs/15/func Supported functions work as `SELECT [function]`, but not yet as `SELECT * FROM [function]`. {% endhint %} -| Function | Supported | Notes and limitations | -| :-------------------------------------- | :-------- | :------------------------------- | -| current_catalog | ✅ | | -| current_database() | ✅ | | -| current_query() | ❌ | | -| current_role | ❌ | | -| current_schema[()] | ✅ | | -| current_schemas(bool) | ✅ | | -| current_user | ❌ | | -| inet_client_addr() | ❌ | | -| inet_client_port() | ❌ | | -| inet_server_addr() | ❌ | | -| inet_server_port() | ❌ | | -| pg_backend_pid() | ❌ | | -| pg_blocking_pids(integer) | ❌ | | -| pg_conf_load_time() | ❌ | | -| pg_current_logfile([text]) | ❌ | | -| pg_my_temp_schema() | ❌ | | -| pg_is_other_temp_schema(oid) | ❌ | | -| pg_jit_available() | ❌ | | -| pg_listening_channels() | ❌ | | -| pg_notification_queue_usage() | ❌ | | -| pg_postmaster_start_time() | ❌ | | -| pg_safe_snapshot_blocking_pids(integer) | ❌ | | -| pg_trigger_depth() | ❌ | | -| session_user | ❌ | | -| user | ❌ | | -| version() | 🟠 | Parses but version is inaccurate | +| Function | Supported | Notes and limitations | +| :-------------------------------------- | :-------- | :----------------------------------- | +| current_catalog | ✅ | | +| current_database() | ✅ | | +| current_query() | ❌ | | +| current_role | ❌ | | +| current_schema[()] | ✅ | | +| current_schemas(bool) | ✅ | | +| current_user | ❌ | | +| inet_client_addr() | ❌ | | +| inet_client_port() | ❌ | | +| inet_server_addr() | ❌ | | +| inet_server_port() | ❌ | | +| pg_backend_pid() | ❌ | | +| pg_blocking_pids(integer) | ❌ | | +| pg_conf_load_time() | ❌ | | +| pg_current_logfile([text]) | ❌ | | +| pg_my_temp_schema() | ❌ | | +| pg_is_other_temp_schema(oid) | ❌ | | +| pg_jit_available() | ❌ | | +| pg_listening_channels() | ❌ | | +| pg_notification_queue_usage() | ❌ | | +| pg_postmaster_start_time() | ❌ | | +| pg_safe_snapshot_blocking_pids(integer) | ❌ | | +| pg_trigger_depth() | ❌ | | +| session_user | ❌ | | +| user | ❌ | | +| version() | 🟠 | Includes version but not system info | ## System Catalog Information Functions @@ -203,7 +203,7 @@ See detailed list in the [Postgres docs](https://www.postgresql.org/docs/15/func | Function | Supported | Notes and limitations | | :------------------------------------------- | :-------- | :-------------------- | -| format_type(oid, integer) | ❌ | | +| format_type(oid, integer) | ✅ | | | pg_char_to_encoding(name) | ❌ | | | pg_encoding_to_char(integer) | ❌ | | | pg_get_catalog_foreign_keys() | ❌ | | @@ -230,15 +230,15 @@ See detailed list in the [Postgres docs](https://www.postgresql.org/docs/15/func | pg_tablespace_location(pod) | ❌ | | | pg_typeof("any") | ❌ | | | COLLATION FOR("any) | ❌ | | -| to_regclass(text) | ❌ | | +| to_regclass(text) | ✅ | | | to_regcollation(text) | ❌ | | | to_regnamespace(text) | ❌ | | | to_regoper(text) | ❌ | | | to_regoperator(text) | ❌ | | -| to_regproc(text) | ❌ | | +| to_regproc(text) | ✅ | | | to_regprocedure(text) | ❌ | | | to_regrole(text) | ❌ | | -| to_regtype(text) | ❌ | | +| to_regtype(text) | ✅ | | ## Schema Visibility Inquiry Functions @@ -264,9 +264,9 @@ See detailed list in the [Postgres docs](https://www.postgresql.org/docs/15/func See detailed list in the [Postgres docs](https://www.postgresql.org/docs/15/functions-info.html#FUNCTIONS-INFO-COMMENT-TABLE). -| Function | Supported | Notes and limitations | -| :---------------------------- | :-------- | :-------------------- | -| col_description(oid, integer) | ❌ | | -| obj_description(oid, name) | ❌ | | -| obj_description(oid) | ❌ | | -| shobj_description(oid, name) | ❌ | | +| Function | Supported | Notes and limitations | +| :---------------------------- | :-------- | :------------------------- | +| col_description(oid, integer) | 🟠 | Parses but not implemented | +| obj_description(oid, name) | 🟠 | Parses but not implemented | +| obj_description(oid) | ❌ | Deprecated in Postgres | +| shobj_description(oid, name) | 🟠 | Parses but not implemented | diff --git a/packages/doltlab/content/SUMMARY.md b/packages/doltlab/content/SUMMARY.md index 98946d4d..408168d0 100644 --- a/packages/doltlab/content/SUMMARY.md +++ b/packages/doltlab/content/SUMMARY.md @@ -35,6 +35,7 @@ - [Configuration file reference](reference/installer/configuration-file.md) - [Command line reference](reference/installer/cli.md) - [Release Notes](reference/release-notes/README.md) + - [v2.3.0](reference/release-notes/v2.3.0.md) - [v2.2.2](reference/release-notes/v2.2.2.md) - [v2.2.1](reference/release-notes/v2.2.1.md) - [v2.2.0](reference/release-notes/v2.2.0.md) diff --git a/packages/doltlab/content/guides/basic.md b/packages/doltlab/content/guides/basic.md index d231559f..f8a92637 100644 --- a/packages/doltlab/content/guides/basic.md +++ b/packages/doltlab/content/guides/basic.md @@ -18,10 +18,9 @@ This guide will cover how to perform common DoltLab administrator configuration 10. [Disable usage metrics](#disable-usage-metrics) 11. [Use a domain name with DoltLab](#use-a-domain-name-with-doltlab) 12. [Run DoltLab on Hosted Dolt](#run-doltlab-on-hosted-dolt) -13. [Serve DoltLab over HTTPS natively](#serve-doltlab-over-https-natively) -14. [Improve DoltLab performance](#improve-doltlab-performance) -15. [Serve DoltLab behind an AWS Network Load Balancer](#serve-doltlab-behind-an-aws-network-load-balancer) -16. [Update database passwords](#update-application-database-passwords) +13. [Improve DoltLab performance](#improve-doltlab-performance) +14. [Serve DoltLab behind an AWS Network Load Balancer](#serve-doltlab-behind-an-aws-network-load-balancer) +15. [Update database passwords](#update-application-database-passwords) # File issues and view release notes @@ -527,38 +526,6 @@ Start DoltLab using the `./start.sh` script generated by the [installer](../refe ![](../.gitbook/assets/hosted_dolt_workbench.png) -# Serve DoltLab over HTTPS natively - -First, make sure that port `443` is open on the host running DoltLab (as well as the other required ports `100`, `4321`, and `50051`) and that you have a valid TLS certificate configured for your DoltLab host. We recommend creating a TLS certificate using [certbot](https://certbot.eff.org/). - -Next, edit `installer_config.yaml` to contain the following: - -```yaml -# installer_config.yaml -scheme: https -tls: - cert_chain: /path/to/tls/certificate/chain - private_key: /path/to/tls/private/key -``` - -Save these changes and rerun the [installer](../reference/installer.md) to regenerate DoltLab assets that will be served over HTTPS. - -```bash -./installer -``` - -Alternatively, if you prefer to use command line flags, run the [installer](../reference/installer.md) with: - -```bash -./installer \ -... --https=true \ ---tls-cert-chain=/path/to/tls/certificate/chain \ ---tls-private-key=/path/to/tls/private/key -``` - -You can now restart DoltLab with the `./start.sh` script, and it will be served over HTTPS. - # Improve DoltLab performance It is possible to limit the number of concurrent Jobs running on a DoltLab host, which might be starving the host for resources and affecting DoltLab's performance. @@ -601,12 +568,12 @@ First, setup DoltLab on an [AWS EC2 host](https://aws.amazon.com/pm/ec2) in the If this instance should _only_ be accessible by the NLB, ensure that the DoltLab host is created in a private subnet and does not have public IP address. -After setting up your DoltLab host, edit the host's inbound security group rules to allow all traffic on ports: `80/443`, `100`, `4321`, `50051`, and `2001`. +After setting up your DoltLab host, edit the host's inbound security group rules to allow all traffic on ports: `80`, `100`, `4321`, `50051`, and `2001`. Because the host is in a private subnet with no public IP though, only the NLB will be able to connect to the host on these ports. Next, in AWS, create [target groups](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html) for each DoltLab port that the NLB will forward requests to. These ports are: -`80/443`, `100`, `4321`, and `50051`. +`80`, `100`, `4321`, and `50051`. ![](../.gitbook/assets/doltlab_target_group_type.png) diff --git a/packages/doltlab/content/guides/enterprise.md b/packages/doltlab/content/guides/enterprise.md index 6a23bc9c..7a32706b 100644 --- a/packages/doltlab/content/guides/enterprise.md +++ b/packages/doltlab/content/guides/enterprise.md @@ -46,6 +46,8 @@ The values for these arguments will be provided to you by our DoltLab team. The 9. [Connect DoltLab to an SMTP server with implicit TLS](#connect-doltlab-to-an-smtp-server-with-implicit-tls) 10. [Troubleshoot SMTP server connection problems](#troubleshoot-smtp-server-connection-problems) 11. [Set up a SMTP server using any Gmail address](#set-up-a-smtp-server-using-any-gmail-address) +12. [Serve DoltLab over HTTPS natively](#serve-doltlab-over-https-natively) +13. [Automatically upgrade DoltLab](#automatically-upgrade-doltlab) # Use custom logo on DoltLab instance @@ -1487,3 +1489,59 @@ ubuntu@ip-10-2-0-24:~/doltlab$ ``` Running the newly generated `./start.sh` will start DoltLab connected to Gmail. + +# Serve DoltLab over HTTPS natively + +First, make sure that port `443` is open on the host running DoltLab (as well as the other required ports `100`, `4321`, and `50051`) and that you have a valid TLS certificate configured for your DoltLab host. We recommend creating a TLS certificate using [certbot](https://certbot.eff.org/). + +Next, edit `installer_config.yaml` to contain the following: + +```yaml +# installer_config.yaml +scheme: https +tls: + cert_chain: /path/to/tls/certificate/chain + private_key: /path/to/tls/private/key +``` + +Save these changes and rerun the [installer](../reference/installer.md) to regenerate DoltLab assets that will be served over HTTPS. + +```bash +./installer +``` + +Alternatively, if you prefer to use command line flags, run the [installer](../reference/installer.md) with: + +```bash +./installer \ +... +-https=true \ +--tls-cert-chain=/path/to/tls/certificate/chain \ +--tls-private-key=/path/to/tls/private/key +``` + +You can now restart DoltLab with the `./start.sh` script, and it will be served over HTTPS. + +# Automatically upgrade DoltLab + +DoltLab >= `v2.3.0` supports automatic upgrades. + +To automatically upgrade your DoltLab instance to the latest version, first ensure your instance is stopped by running the `./stop.sh` script. Next run the [installer](../reference/installer.md) with the [upgrade](../reference/installer/cli.md#upgrade) flag: + +```bash +./installer --upgrade +``` + +This will produce output like the following: + +```bash +2024-07-26T18:32:56.999Z INFO run/upgrade.go:33 Preparing to upgrade DoltLab +2024-07-26T18:32:57.054Z INFO run/upgrade.go:67 Downloading and unpacking latest version {"version": "v2.3.1"} +2024-07-26T18:32:58.850Z INFO cmd/main.go:614 Please rerun the 'installer' to generate new assets for your upgraded DoltLab +``` + +After this completes, you will have the latest DoltLab version. Rerun the `installer` to regenerate the DoltLab assets for the upgraded version. + +```bash +./installer +``` diff --git a/packages/doltlab/content/reference/installer/cli.md b/packages/doltlab/content/reference/installer/cli.md index c0ae26f3..713d895e 100644 --- a/packages/doltlab/content/reference/installer/cli.md +++ b/packages/doltlab/content/reference/installer/cli.md @@ -548,6 +548,10 @@ Configuration file equivalent [private_key](./configuration-file.md#private_key) _Boolean_. If true will generate a script to install DoltLab's dependencies on Ubuntu. +## upgrade + +_Boolean_. If true will upgrade DoltLab to the latest version. DoltLab Enterprise only. + ## use-env _Boolean_. If true, sensitive values will not be written to generated assets and environment variables will be expected instead. diff --git a/packages/doltlab/content/reference/installer/configuration-file.md b/packages/doltlab/content/reference/installer/configuration-file.md index bb56b3df..ad07c032 100644 --- a/packages/doltlab/content/reference/installer/configuration-file.md +++ b/packages/doltlab/content/reference/installer/configuration-file.md @@ -902,7 +902,7 @@ Command line equivalent [scheme](./cli.md#scheme). ## tls -_Dictionary_. TLS configuration options. _Optional_. See [serving DoltLab natively over HTTPS](../../guides/basic.md#serve-doltlab-over-https-natively) for more information. +_Dictionary_. TLS configuration options. _Optional_. See [serving DoltLab natively over HTTPS](../../guides/enterprise.md#serve-doltlab-over-https-natively) for more information. - [cert_chain](#cert_chain) - [private_key](#private_key) diff --git a/packages/doltlab/content/reference/release-notes/README.md b/packages/doltlab/content/reference/release-notes/README.md index 3f283071..016d37c9 100644 --- a/packages/doltlab/content/reference/release-notes/README.md +++ b/packages/doltlab/content/reference/release-notes/README.md @@ -6,6 +6,7 @@ DoltLab is currently closed-source, but the [dolthub/doltlab-issues](https://git The following is a list of release notes for available DoltLab versions >= `v2.0.0`. DoltLab and DoltHub share the same source code. For this reason, we list fixes related to DoltLab issues in the `DoltLab Features/Bug Fixes` section of the release notes, and fixes corresponding to DoltHub issuers in the `DoltLab Features/Bug Fixes` section. +- [DoltLab v2.3.0](./v2.3.0.md) - [DoltLab v2.2.2](./v2.2.2.md) - [DoltLab v2.2.1](./v2.2.1.md) - [DoltLab v2.2.0](./v2.2.0.md) diff --git a/packages/doltlab/content/reference/release-notes/v2.3.0.md b/packages/doltlab/content/reference/release-notes/v2.3.0.md new file mode 100644 index 00000000..4d057a22 --- /dev/null +++ b/packages/doltlab/content/reference/release-notes/v2.3.0.md @@ -0,0 +1,12 @@ +--- +title: DoltLab v2.3.0 Release Notes +--- + +Download at [https://doltlab-releases.s3.amazonaws.com/linux/amd64/doltlab-v2.3.0.zip](https://doltlab-releases.s3.amazonaws.com/linux/amd64/doltlab-v2.3.0.zip) + +## DoltLab Features/Bug Fixes +* Serving DoltLab over HTTPS is now exclusively a DoltLab Enterprise feature. +* The `installer` can be used to automatically upgrade a DoltLab Enterprise instance by running `./installer --upgrade`. + +## DoltHub Features/Bug Fixes +* Misc. UI design changes and bug fixes