X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=sql%2Fpr0n.sql;h=d3541ed27656b7d420995cae56c14b16d1cb1561;hb=refs%2Fheads%2Fmaster;hp=371e05cf4fdfef765c35318276fef867dad6ac57;hpb=8e5ec72d5a96e0828d61cd74d27cfa3725d337db;p=pr0n diff --git a/sql/pr0n.sql b/sql/pr0n.sql index 371e05c..d3541ed 100644 --- a/sql/pr0n.sql +++ b/sql/pr0n.sql @@ -71,7 +71,8 @@ CREATE TABLE users ( ); -- Mainly used for manual queries -- usually too slow to be very useful --- for web views in the long run. +-- for web views in the long run (except for the special case of the +-- partial index below). CREATE TABLE exif_info ( image integer NOT NULL REFERENCES images (id) ON DELETE CASCADE, key varchar NOT NULL, @@ -81,6 +82,9 @@ CREATE TABLE exif_info ( ); CLUSTER exif_info_pkey ON exif_info; +CREATE UNIQUE INDEX exif_info_fast_listing ON exif_info (image, key) INCLUDE (value) + WHERE key IN ('ExposureProgram', 'FocalLength', 'ExposureTime', 'FNumber', 'ISO', 'ISOSetting', + 'ExposureBiasValue', 'ExposureCompensation', 'DateTimeOriginal', 'Model', 'Flash'); GRANT INSERT ON TABLE deleted_images TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE events TO pr0n;