This commit is contained in:
2026-06-21 03:53:06 +03:00
commit f1dd557c5d
147 changed files with 34363 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
CREATE EXTENSION pg_trgm;
CREATE TABLE room(
"roomId" text,
"creationTime" timestamp with time zone,
password text,
owner text,
vanity text,
"isChatDisabled" boolean,
"isSubRoom" boolean,
data jsonb,
"lastUpdateTime" timestamp with time zone,
"roomTitle" text,
"roomDescription" text,
"roomTitleColor" text,
"mediaPath" text,
PRIMARY KEY ("roomId")
);
CREATE UNIQUE INDEX on room(LOWER(vanity)) WHERE vanity IS NOT NULL;
CREATE INDEX on room(owner) WHERE owner IS NOT NULL;
CREATE INDEX on room("creationTime");
CREATE INDEX on room USING GIN("roomId" gin_trgm_ops);
CREATE TABLE subscriber(
"customerId" text,
email text,
status text,
uid text,
PRIMARY KEY(uid)
);
CREATE TABLE link_account(
uid text,
kind text,
accountid text,
accountname text,
discriminator text,
PRIMARY KEY(uid, kind)
);
CREATE TABLE active_user(
uid text,
"lastActiveTime" timestamp with time zone,
PRIMARY KEY(uid)
);
CREATE TABLE vbrowser(
id bigserial PRIMARY KEY, -- numeric sequence ID
pool text NOT NULL, -- name of the pool this VM is in, e.g. HetznerLargeUS
vmid text NOT NULL, -- identifier for the VM, only unique across a provider
state text NOT NULL, -- available, staging, used
"creationTime" timestamp with time zone NOT NULL, -- time the VM was created
"heartbeatTime" timestamp with time zone, -- last time a room reported this VM was in use
"assignTime" timestamp with time zone, -- last time the room was assigned
"roomId" text, -- room VM assigned to
uid text, -- user requesting the VM
data json, -- metadata for the VM
retries int DEFAULT 0, -- how many times we checked if VM is up
pass text, -- password to access vbrowser
image text -- ID of the last image applied to this VM
);
CREATE UNIQUE INDEX on vbrowser(pool, vmid);
CREATE INDEX on vbrowser(pool, state);
CREATE INDEX on vbrowser("roomId");
CREATE INDEX on vbrowser(uid);