diff --git a/couchpotato/core/migration/versions/001_Releases_last_edit.py b/couchpotato/core/migration/versions/001_Releases_last_edit.py new file mode 100644 index 00000000..d4b12080 --- /dev/null +++ b/couchpotato/core/migration/versions/001_Releases_last_edit.py @@ -0,0 +1,25 @@ +from migrate.changeset.schema import create_column +from sqlalchemy.schema import MetaData, Column, Table, Index +from sqlalchemy.types import Integer + +meta = MetaData() + + +def upgrade(migrate_engine): + meta.bind = migrate_engine + + # Change release, add last_edit and index + last_edit_column = Column('last_edit', Integer) + release = Table('release', meta, last_edit_column) + + create_column(last_edit_column, release) + Index('ix_release_last_edit', release.c.last_edit).create() + + # Change movie last_edit + last_edit_column = Column('last_edit', Integer) + movie = Table('movie', meta, last_edit_column) + Index('ix_movie_last_edit', movie.c.last_edit).create() + + +def downgrade(migrate_engine): + pass diff --git a/couchpotato/core/settings/model.py b/couchpotato/core/settings/model.py index 64117fb4..141ee4fe 100644 --- a/couchpotato/core/settings/model.py +++ b/couchpotato/core/settings/model.py @@ -45,7 +45,7 @@ class Movie(Entity): The files belonging to the movie object are global for the whole movie such as trailers, nfo, thumbnails""" - last_edit = Field(Integer, default = lambda: int(time.time())) + last_edit = Field(Integer, default = lambda: int(time.time()), index = True) library = ManyToOne('Library', cascade = 'delete, delete-orphan', single_parent = True) status = ManyToOne('Status') @@ -95,6 +95,7 @@ class Release(Entity): """Logically groups all files that belong to a certain release, such as parts of a movie, subtitles.""" + last_edit = Field(Integer, default = lambda: int(time.time()), index = True) identifier = Field(String(100), index = True) movie = ManyToOne('Movie')