Skip to content

Commit

Permalink
Merge pull request #2293 from dolthub/gitbook-dev
Browse files Browse the repository at this point in the history
doltlab-v2.3.0 and other changes
  • Loading branch information
coffeegoddd authored Jul 29, 2024
2 parents 952725f + 62d5e12 commit 13a551d
Show file tree
Hide file tree
Showing 10 changed files with 326 additions and 283 deletions.
400 changes: 200 additions & 200 deletions packages/doltgres/content/reference/sql-support/supported-commands.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -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 ||
Expand All @@ -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 | |
Original file line number Diff line number Diff line change
Expand Up @@ -168,42 +168,42 @@ 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

See detailed list in the [Postgres docs](https://www.postgresql.org/docs/15/functions-info.html#FUNCTIONS-INFO-CATALOG-TABLE).

| 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() || |
Expand All @@ -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

Expand All @@ -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 |
1 change: 1 addition & 0 deletions packages/doltlab/content/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
43 changes: 5 additions & 38 deletions packages/doltlab/content/guides/basic.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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)
Expand Down
58 changes: 58 additions & 0 deletions packages/doltlab/content/guides/enterprise.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down Expand Up @@ -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
```
4 changes: 4 additions & 0 deletions packages/doltlab/content/reference/installer/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
1 change: 1 addition & 0 deletions packages/doltlab/content/reference/release-notes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
12 changes: 12 additions & 0 deletions packages/doltlab/content/reference/release-notes/v2.3.0.md
Original file line number Diff line number Diff line change
@@ -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

0 comments on commit 13a551d

Please sign in to comment.