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

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

Fix indentation

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