pithos-upgrade 2.51 KB
Newer Older
1
2
3
4
5
UPGRADE
=======

0.7.9 -> 0.7.10
---------------
6
7
* Update settings.py (BACKEND_*, SERVICE_NAME, \*_EMAIL, \*_TARGET, IM_*)
* Update ``attributes`` table in mysql (backend)::
8
    
9
10
    mysql> update attributes set `key`='ETag' where `key`='hash';

11
* Upgrade ``im_user`` table (im app)::
12
13
    
    ALTER TABLE im_user ADD COLUMN 'password' VARCHAR(255);
14

15
0.7.10 -> 0.8.0
16
---------------
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
* Upgrade ``public`` table in mysql (backend):
  
  * Run: mysqldump pithosdb public > public-table.sql
  * mysql> drop table public;
  * Update the codebase and run the server so the new public table is created
  * From the sql dump above, take the row::
    
    INSERT INTO `public` VALUES (...);
    
    Rewrite as::
    
    INSERT INTO `public`(`path`) VALUES (...);
    
    And execute in the database

32
* Create settings.local with local setting overrides
Antony Chazapis's avatar
Antony Chazapis committed
33
* Install python-django-south
34
35
* Setup south::
    
Sofia Papagiannaki's avatar
Sofia Papagiannaki committed
36
37
38
    python manage.py syncdb
    python manage.py migrate im 0001 --fake
    python manage.py migrate im
39
40
41

0.8.0 -> 0.8.1
--------------
42
* Reset ``policy`` table in mysql (backend)::
43
44
    
    mysql> update policy set `value`='auto' where `key`='versioning';
45
46
47

0.8.1 -> 0.8.2
--------------
48
49
* Add the ``X-Forwarded-Protocol`` header directive in the apache configuration, as described in the admin guide
* Update ``attributes`` table in mysql (backend)::
Antony Chazapis's avatar
Antony Chazapis committed
50
51
52
53
54
55
56
57
58
59
60
61
    
    mysql> CREATE TABLE `attributes_new` (
               `serial` int(11) NOT NULL,
               `domain` varchar(255) COLLATE utf8_bin NOT NULL,
               `key` varchar(255) COLLATE utf8_bin NOT NULL,
               `value` varchar(255) COLLATE utf8_bin DEFAULT NULL,
               PRIMARY KEY (`serial`,`domain`,`key`),
               CONSTRAINT FOREIGN KEY (`serial`) REFERENCES `versions` (`serial`) ON DELETE CASCADE ON UPDATE CASCADE
           ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
    mysql> insert into attributes_new select `serial`, 'pithos', `key`, `value` from attributes;
    mysql> drop table attributes;
    mysql> alter table attributes_new rename to attributes;
Antony Chazapis's avatar
Antony Chazapis committed
62

63
* Update ``versions`` table in mysql (backend)::
Antony Chazapis's avatar
Antony Chazapis committed
64
65
66
67
68
    
    mysql> create temporary table tmp_uuids as select distinct node, uuid() as `uuid` from versions;
    mysql> alter table versions add column `uuid` varchar(64) DEFAULT '' NOT NULL after `muser`;
    mysql> update versions v, tmp_uuids u set v.`uuid` = u.`uuid` where v.`node` = u.`node`;
    mysql> create index idx_versions_node_uuid on versions(uuid);
Antony Chazapis's avatar
Antony Chazapis committed
69
70
71
72

0.8.2 -> 0.9.0
--------------
* No upgrade path provided. Please reinstall and reconfigure.