19 lines
796 B
SQL
19 lines
796 B
SQL
CREATE TABLE downloader_instances (
|
|
id TEXT PRIMARY KEY,
|
|
name TEXT NOT NULL,
|
|
kind TEXT NOT NULL CHECK (kind = 'qbittorrent'),
|
|
endpoint TEXT NOT NULL UNIQUE,
|
|
config TEXT NOT NULL
|
|
);
|
|
CREATE TABLE downloader_selection (
|
|
singleton INTEGER PRIMARY KEY CHECK (singleton = 1),
|
|
downloader_id TEXT REFERENCES downloader_instances(id)
|
|
);
|
|
INSERT INTO downloader_selection(singleton) VALUES (1);
|
|
|
|
ALTER TABLE download_jobs ADD COLUMN downloader_id TEXT REFERENCES downloader_instances(id);
|
|
ALTER TABLE download_jobs ADD COLUMN legacy_unassigned INTEGER NOT NULL DEFAULT 0;
|
|
-- Existing jobs have no recorded owner. Do not assign them to an arbitrary new instance.
|
|
UPDATE download_jobs SET legacy_unassigned = 1;
|
|
CREATE INDEX jobs_downloader ON download_jobs(downloader_id, state);
|