[performance] convert enum strings to ints (#3558)

* convert statuses.visibility and notifications.notification_type columns from type string -> int for performance / space savings

* fix test trying to compare string to int

* fix instance count query using string literal instead of gtsmodel const type

* ensure a default value is always set

* also migrate the account settings and sin bin status tables

* initialize maps outside loops and place into singular enum mapping creation func

* use int16 for enum types

* update sinbinstatus creation to be from a snapshot at initial creation

* add snapshot of poll type at creation time
This commit is contained in:
kim 2024-11-25 13:48:59 +00:00 committed by GitHub
commit cac9d65029
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
32 changed files with 940 additions and 91 deletions

View file

@ -21,7 +21,8 @@ import (
"context"
"strings"
"github.com/superseriousbusiness/gotosocial/internal/gtsmodel"
gtsmodel "github.com/superseriousbusiness/gotosocial/internal/db/bundb/migrations/20231002153327_add_status_polls"
"github.com/uptrace/bun"
)