Merge branch 'master' of https://code.grnet.gr/git/pithos
[pithos] / snf-pithos-backend / pithos / backends / lib / sqlalchemy / alembic / versions / 3dd56e750a3_fix_latest_version.py
1 """Fix latest_version
2
3 Revision ID: 3dd56e750a3
4 Revises: 230f8ce9c90f
5 Create Date: 2012-07-19 14:36:24.242310
6
7 """
8
9 # revision identifiers, used by Alembic.
10 revision = '3dd56e750a3'
11 down_revision = '230f8ce9c90f'
12
13 from alembic import op
14 import sqlalchemy as sa
15 from sqlalchemy.sql import table, column
16 from sqlalchemy.sql.expression import desc
17
18 def upgrade():
19     n = table('nodes', 
20         column('node', sa.Integer),
21         column('latest_version', sa.Integer)
22     )
23     v = table('versions', 
24         column('node', sa.Integer),
25         column('mtime', sa.Integer),
26         column('serial', sa.Integer),
27     )
28     
29     s = sa.select([v.c.serial]).where(n.c.node == v.c.node).order_by(desc(v.c.mtime)).limit(1)
30     op.execute(
31         n.update().\
32             values({'latest_version':s})
33             )
34
35
36 def downgrade():
37     pass