X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=sql%2Fpr0n.sql;h=ddfa7af36dcbd75d86efd3b7656c95695fb6a920;hb=a19e038e99eef4319288ef57ea8e79ccc40d3389;hp=5407ce812b1f043628044f760cdb8350dac15d79;hpb=60b276d2f04c2b9b1d5f0c0dc1b5f0cc4176ef26;p=pr0n diff --git a/sql/pr0n.sql b/sql/pr0n.sql index 5407ce8..ddfa7af 100644 --- a/sql/pr0n.sql +++ b/sql/pr0n.sql @@ -3,12 +3,18 @@ CREATE TABLE events ( date character varying NOT NULL, name character varying NOT NULL, vhost character varying NOT NULL, - last_picture timestamp without time zone DEFAULT '1970-01-01 00:00:00'::timestamp without time zone NOT NULL + last_update timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP +); + +-- In a separate table to avoid deadlocks. +CREATE TABLE last_picture_cache ( + event varchar PRIMARY KEY references events ( id ), + last_picture timestamp without time zone ); CREATE TABLE images ( - id integer serial NOT NULL PRIMARY KEY REFERENCES events(id), - event character varying NOT NULL, + id serial NOT NULL PRIMARY KEY, + event character varying NOT NULL REFERENCES events(id), filename character varying NOT NULL, width integer DEFAULT -1 NOT NULL, height integer DEFAULT -1 NOT NULL, @@ -52,6 +58,15 @@ CREATE TABLE users ( vhost character varying(32) NOT NULL ); +CREATE TABLE exif_info ( + image integer NOT NULL REFERENCES images (id), + tag varchar NOT NULL, + value varchar NOT NULL, + + PRIMARY KEY ( image, tag ) +); + + GRANT INSERT ON TABLE deleted_images TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE events TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE fake_files TO pr0n; @@ -59,4 +74,4 @@ GRANT INSERT,SELECT,UPDATE ON TABLE imageid_seq TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE images TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE shadow_files TO pr0n; GRANT SELECT ON TABLE users TO pr0n; - +GRANT SELECT,INSERT,DELETE ON TABLE exif_info TO pr0n;