Statistics
| Branch: | Tag: | Revision:

root / snf-pithos-backend / pithos / backends / lib / sqlalchemy / alembic / versions / 230f8ce9c90f_alter_nodes_add_colu.py @ 5f8bbf54

History | View | Annotate | Download (948 Bytes)

1
"""alter nodes add column latest version
2

3
Revision ID: 230f8ce9c90f
4
Revises: 8320b1c62d9
5
Create Date: 2012-07-17 20:32:54.466145
6

7
"""
8

    
9
# revision identifiers, used by Alembic.
10
revision = '230f8ce9c90f'
11
down_revision = '8320b1c62d9'
12

    
13
from alembic import op, context
14
from sqlalchemy.sql import table, column
15
from alembic import op
16

    
17
import sqlalchemy as sa
18

    
19
def upgrade():
20
    op.add_column('nodes', sa.Column('latest_version', sa.INTEGER))
21
    
22
    n = table('nodes', 
23
        column('node', sa.Integer),
24
        column('latest_version', sa.Integer)
25
    )
26
    v = table('versions', 
27
        column('node', sa.Integer),
28
        column('mtime', sa.Integer),
29
        column('serial', sa.Integer),
30
    )
31
    
32
    s = sa.select([v.c.serial]).where(n.c.node == v.c.node).order_by(v.c.mtime).limit(1)
33
    op.execute(
34
        n.update().\
35
            values({'latest_version':s})
36
            )
37

    
38
def downgrade():
39
    op.drop_column('nodes', 'latest_version')