]> Some of my projects - localmylist.git/commitdiff
Update schema... I think these were all the changes -.-
authorAPTX <marek321@gmail.com>
Tue, 12 Jun 2012 20:58:00 +0000 (22:58 +0200)
committerAPTX <marek321@gmail.com>
Tue, 12 Jun 2012 20:58:00 +0000 (22:58 +0200)
localmylist/share/schema/schema.sql

index b69fe3f1943dddf20f961c60e116c3475493bfb6..24593797ca9c5f09c627aa5c510d1f153f5e4774 100644 (file)
@@ -111,10 +111,12 @@ CREATE INDEX file_episode_rel_eid_fk ON file_episode_rel USING btree (eid);
 CREATE INDEX file_episode_rel_fid_fk ON file_episode_rel USING btree (fid);
 
 CREATE TABLE file_location (
-    fid integer NOT NULL,
-    host_id integer NOT NULL,
-    path text,
-       renamed timestamp without time zone
+       fid integer NOT NULL,
+       host_id character varying(100),
+       path text,
+       renamed timestamp without time zone,
+       failed_rename boolean NOT NULL DEFAULT false,
+       CONSTRAINT file_location_pk PRIMARY KEY (fid )
 );
 
 CREATE TABLE unknown_file (
@@ -181,12 +183,20 @@ CREATE TABLE log (
     log_id serial NOT NULL,
     type integer,
     log text,
+       log_time timestamp without time zone NOT NULL DEFAULT now(),
        CONSTRAINT log_pk PRIMARY KEY (log_id)
 );
 
 CREATE VIEW file_data AS
     SELECT f.fid, f.eid, f.aid, f.gid, f.anidb_update, f.entry_update, f.my_update, f.ed2k, f.size, f.length, f.extension, f.group_name, f.group_name_short, f.crc, f.release_date, f.version, f.censored, f.type, f.quality_id, f.quality, f.resolution, f.video_codec, f.audio_codec, f.audio_language, f.subtitle_language, f.aspect_ratio, f.my_watched, f.my_state, f.my_file_state, f.my_storage, f.my_source, f.my_other, a.title_romaji AS atitle, e.title_english AS eptitle FROM ((file f LEFT JOIN anime a ON ((f.aid = a.aid))) LEFT JOIN episode e ON ((f.eid = e.eid)));
 
+CREATE VIEW rename_data AS 
+ SELECT f.fid, f.eid, f.aid, f.gid, a.anidb_update AS anime_anidb_update, a.entry_update AS anime_entry_update, a.my_update AS anime_my_update, a.title_english AS anime_title_english, a.title_romaji AS anime_title_romaji, a.title_kanji AS anime_title_kanji, a.description, a.year, a.start_date, a.end_date, a.type AS anime_type, a.rating AS anime_rating, a.votes AS anime_votes, a.temp_rating, a.temp_votes, a.my_vote AS anime_my_vote, a.my_vote_date AS anime_my_vote_date, a.my_temp_vote, a.my_temp_vote_date, ( SELECT count(episode.eid) AS count FROM episode WHERE episode.aid = f.aid) AS episode_count, e.anidb_update AS episode_anidb_update, e.entry_update AS episode_entry_update, e.my_update AS episode_my_update, e.epno, e.title_english AS episode_title_english, e.title_romaji AS episode_title_romaji, e.title_kanji AS episode_title_kanji, e.length AS episode_length, e.airdate, e.state, e.special, e.recap, e.opening, e.ending, e.rating, e.votes, e.my_vote, e.my_vote_date, f.anidb_update, f.entry_update, f.my_update, f.ed2k, f.size, f.length, f.extension, f.group_name, f.group_name_short, f.crc, f.release_date, f.version, f.censored, f.type, f.quality_id, f.quality, f.resolution, f.video_codec, f.audio_codec, f.audio_language, f.subtitle_language, f.aspect_ratio, f.my_watched, f.my_state, f.my_file_state, f.my_storage, f.my_source, f.my_other, fl.host_id, fl.path, fl.renamed, fl.failed_rename
+   FROM file f
+   JOIN anime a ON a.aid = f.aid
+   JOIN episode e ON e.eid = f.eid
+   JOIN file_location fl ON fl.fid = f.fid
+  WHERE fl.renamed IS NULL AND fl.failed_rename = false;
 
 CREATE RULE config_updated_rule AS ON UPDATE TO config DO NOTIFY config_changed;
 
@@ -194,6 +204,8 @@ CREATE RULE file_episode_rel_ignore_duplicate AS ON INSERT TO file_episode_rel W
 COMMENT ON RULE file_episode_rel_ignore_duplicate ON file_episode_rel IS 'Entries to this table are duplicated in exports';
 
 CREATE RULE file_location_ignore_duplicate AS ON INSERT TO file_location WHERE (EXISTS (SELECT 1 FROM file_location WHERE (file_location.fid = new.fid))) DO INSTEAD NOTHING;
+CREATE RULE file_location_update_rule AS ON UPDATE TO file_location DO NOTIFY rename_data_changed;
+CREATE RULE new_file_location_rule AS ON INSERT TO file_location DO NOTIFY rename_data_changed;
 
 CREATE RULE new_pending_request_rule AS ON INSERT TO pending_request DO NOTIFY new_pending_request;