source: peerreviewplugin/tags/0.12/3.1/codereview/upgrades/db_peerreview_6.py

Last change on this file was 16451, checked in by Ryan J Ollos, 6 years ago

Fix indentation

File size: 1.6 KB
Line 
1from trac.db import Table, Column, Index
2
3def do_upgrade(env, ver, db_backend, db):
4    """Change back primary key modified in version 4 to a more sane default.
5    Create index.
6    """
7    cursor = db.cursor()
8
9    realm = 'peerreview'
10
11    cursor.execute("CREATE TEMPORARY TABLE peerreview_old AS SELECT * FROM peerreview")
12    cursor.execute("DROP TABLE peerreview")
13
14    table_metadata = Table('peerreview', key=('review_id'))[
15                              Column('review_id', auto_increment=True, type='int'),
16                              Column('owner'),
17                              Column('status'),
18                              Column('created', type='int'),
19                              Column('closed', type='int'),
20                              Column('name'),
21                              Column('notes'),
22                              Column('parent_id', type='int'),
23                              Column('project'),
24                              Column('keywords'),
25                              Index(['owner']),
26                              Index(['status'])
27                              ]
28
29    env.log.info("Updating table of class %s" % realm)
30    for stmt in db_backend.to_sql(table_metadata):
31        env.log.debug(stmt)
32        cursor.execute(stmt)
33
34    cursor = db.cursor()
35
36    cursor.execute("INSERT INTO peerreview "
37                   "(review_id,owner,status,created,closed,name,notes,parent_id,project,keywords) "
38                   "SELECT review_id,owner,status,created,closed,name,notes,parent_id,project,keywords "
39                   "FROM peerreview_old")
40
41    cursor.execute("DROP TABLE peerreview_old")
Note: See TracBrowser for help on using the repository browser.