4cddfcf2f3
Backend Tests / Tests (other) (push) Failing after 1s
Backend Tests / Static Checks (push) Failing after 2s
Backend Tests / Tests (internal) (push) Failing after 2s
Backend Tests / Tests (server) (push) Failing after 1s
Backend Tests / Tests (store) (push) Failing after 1s
Build Canary Image / build-frontend (push) Failing after 1s
Frontend Tests / Lint (push) Failing after 1s
Build Canary Image / build-push (linux/amd64) (push) Has been skipped
Build Canary Image / build-push (linux/arm64) (push) Has been skipped
Build Canary Image / merge (push) Has been skipped
Frontend Tests / Build (push) Failing after 1s
Release Please / release-please (push) Failing after 0s
Proto Linter / Lint Protos (push) Failing after 2s
15 lines
600 B
SQL
15 lines
600 B
SQL
-- memo_share stores per-memo share grants (one row per share link).
|
|
-- uid is the opaque bearer token included in the share URL.
|
|
-- ON DELETE CASCADE ensures grants are cleaned up when the parent memo is deleted.
|
|
CREATE TABLE memo_share (
|
|
id SERIAL PRIMARY KEY,
|
|
uid TEXT NOT NULL UNIQUE,
|
|
memo_id INTEGER NOT NULL,
|
|
creator_id INTEGER NOT NULL,
|
|
created_ts BIGINT NOT NULL DEFAULT EXTRACT(EPOCH FROM NOW()),
|
|
expires_ts BIGINT DEFAULT NULL,
|
|
FOREIGN KEY (memo_id) REFERENCES memo(id) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE INDEX idx_memo_share_memo_id ON memo_share(memo_id);
|