Statistics
| Branch: | Tag: | Revision:

root / README.upgrade @ 044f4210

History | View | Annotate | Download (2.4 kB)

1
UPGRADE
2
=======
3

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

    
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
* Upgrade 'public' table in mysql (backend):
18
	* Run: mysqldump pithosdb public > public-table.sql
19
	* mysql> drop table public;
20
	* Update the codebase and run the server so the new public table is created
21
	* From the sql dump above, take the row:
22
	    
23
		INSERT INTO `public` VALUES (...);
24
      
25
          Rewrite as:
26
	    
27
		INSERT INTO `public`(`path`) VALUES (...);
28
	  
29
	  And execute in the database
30
* Create settings.local with local setting overrides
31
* Install python-django-south
32
* Setup south:
33
    python manage.py syncdb
34
    python manage.py migrate im 0001 --fake
35
    python manage.py migrate im
36

    
37
0.8.0 -> 0.8.1
38
--------------
39
* Reset 'policy' table in mysql (backend):
40
    
41
    mysql> update policy set `value`='auto' where `key`='versioning';
42

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

    
60
* Update 'versions' table in mysql (backend):
61
    
62
    mysql> create temporary table tmp_uuids as select distinct node, uuid() as `uuid` from versions;
63
    mysql> alter table versions add column `uuid` varchar(64) DEFAULT '' NOT NULL after `muser`;
64
    mysql> update versions v, tmp_uuids u set v.`uuid` = u.`uuid` where v.`node` = u.`node`;
65
    mysql> create index idx_versions_node_uuid on versions(uuid);