mirror of
https://github.com/penpot/penpot.git
synced 2025-05-25 08:36:10 +02:00
✨ Add missing indexes and improve others.
This commit is contained in:
parent
c1476d0397
commit
60f4f863df
5 changed files with 40 additions and 5 deletions
|
@ -15,6 +15,9 @@
|
||||||
- Properly handle errors on github, gitlab and ldap auth backends.
|
- Properly handle errors on github, gitlab and ldap auth backends.
|
||||||
- Properly mark profile auth backend (on first register/ auth with 3rd party auth provider).
|
- Properly mark profile auth backend (on first register/ auth with 3rd party auth provider).
|
||||||
- Fix problem width handoff code generation [Taiga #1204](https://tree.taiga.io/project/penpot/issue/1204)
|
- Fix problem width handoff code generation [Taiga #1204](https://tree.taiga.io/project/penpot/issue/1204)
|
||||||
|
- Add some missing database indexes (mainly improves performance on
|
||||||
|
large databases on file-update rpc method, and some background
|
||||||
|
tasks).
|
||||||
|
|
||||||
|
|
||||||
## 1.2.0-alpha
|
## 1.2.0-alpha
|
||||||
|
|
|
@ -152,6 +152,12 @@
|
||||||
{:name "0046-add-profile-complaint-table"
|
{:name "0046-add-profile-complaint-table"
|
||||||
:fn (mg/resource "app/migrations/sql/0046-add-profile-complaint-table.sql")}
|
:fn (mg/resource "app/migrations/sql/0046-add-profile-complaint-table.sql")}
|
||||||
|
|
||||||
|
{:name "0047-mod-file-change-table"
|
||||||
|
:fn (mg/resource "app/migrations/sql/0047-mod-file-change-table.sql")}
|
||||||
|
|
||||||
|
{:name "0048-mod-storage-tables"
|
||||||
|
:fn (mg/resource "app/migrations/sql/0048-mod-storage-tables.sql")}
|
||||||
|
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -10,11 +10,17 @@ CREATE TABLE storage_object (
|
||||||
metadata jsonb NULL DEFAULT NULL
|
metadata jsonb NULL DEFAULT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE INDEX storage_object__id__deleted_at__idx
|
||||||
|
ON storage_object(id, deleted_at)
|
||||||
|
WHERE deleted_at IS NOT null;
|
||||||
|
|
||||||
CREATE TABLE storage_data (
|
CREATE TABLE storage_data (
|
||||||
id uuid PRIMARY KEY REFERENCES storage_object (id) ON DELETE CASCADE,
|
id uuid PRIMARY KEY REFERENCES storage_object (id) ON DELETE CASCADE,
|
||||||
data bytea NOT NULL
|
data bytea NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE INDEX storage_data__id__idx ON storage_data(id);
|
||||||
|
|
||||||
-- Table used for store inflight upload ids, for later recheck and
|
-- Table used for store inflight upload ids, for later recheck and
|
||||||
-- delete possible staled files that exists on the phisical storage
|
-- delete possible staled files that exists on the phisical storage
|
||||||
-- but does not exists in the 'storage_object' table.
|
-- but does not exists in the 'storage_object' table.
|
||||||
|
@ -28,8 +34,3 @@ CREATE TABLE storage_pending (
|
||||||
PRIMARY KEY (created_at, id)
|
PRIMARY KEY (created_at, id)
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX storage_data__id__idx ON storage_data(id);
|
|
||||||
CREATE INDEX storage_object__id__deleted_at__idx
|
|
||||||
ON storage_object(id, deleted_at)
|
|
||||||
WHERE deleted_at IS NOT null;
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
--- Helps on the lagged changes query on update-file rpc
|
||||||
|
CREATE INDEX file_change__file_id__revn__idx ON file_change (file_id, revn);
|
||||||
|
|
||||||
|
--- Drop redundant index
|
||||||
|
DROP INDEX page_change_file_id_idx;
|
||||||
|
|
||||||
|
--- Add profile_id field.
|
||||||
|
ALTER TABLE file_change
|
||||||
|
ADD COLUMN profile_id uuid NULL REFERENCES profile (id) ON DELETE SET NULL;
|
||||||
|
|
||||||
|
CREATE INDEX file_change__profile_id__idx
|
||||||
|
ON file_change (profile_id)
|
||||||
|
WHERE profile_id IS NOT NULL;
|
||||||
|
|
||||||
|
--- Fix naming
|
||||||
|
ALTER INDEX file_change__created_at_idx RENAME TO file_change__created_at__idx;
|
|
@ -0,0 +1,9 @@
|
||||||
|
--- Drop redundant index already covered by primary key
|
||||||
|
DROP INDEX storage_data__id__idx;
|
||||||
|
|
||||||
|
--- Replace not efficient index with more efficient one
|
||||||
|
DROP INDEX storage_object__id__deleted_at__idx;
|
||||||
|
|
||||||
|
CREATE INDEX storage_object__id__deleted_at__idx
|
||||||
|
ON storage_object(deleted_at, id)
|
||||||
|
WHERE deleted_at IS NOT NULL;
|
Loading…
Add table
Add a link
Reference in a new issue