X-Git-Url: https://code.grnet.gr/git/pithos/blobdiff_plain/c95d1471fb0eef1438b987c92b7479f2422b5b25..a6552b098c930d779ea7e9f63f5652acb121c36d:/README.upgrade diff --git a/README.upgrade b/README.upgrade index b73508e..3560795 100644 --- a/README.upgrade +++ b/README.upgrade @@ -3,7 +3,7 @@ UPGRADE 0.7.9 -> 0.7.10 --------------- -* Update settings.py (BACKEND*, SERVICE_NAME, *_EMAIL, *_TARGET, IM_*) +* Update settings.py (BACKEND_*, SERVICE_NAME, *_EMAIL, *_TARGET, IM_*) * Update 'attributes' table in mysql (backend): mysql> update attributes set `key`='ETag' where `key`='hash'; @@ -12,3 +12,54 @@ UPGRADE ALTER TABLE im_user ADD COLUMN 'password' VARCHAR(255); +0.7.10 -> 0.8.0 +--------------- +* 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 +* Create settings.local with local setting overrides +* Install python-django-south +* Setup south: + python manage.py syncdb + python manage.py migrate im 0001 --fake + python manage.py migrate im + +0.8.0 -> 0.8.1 +-------------- +* Reset 'policy' table in mysql (backend): + + mysql> update policy set `value`='auto' where `key`='versioning'; + +0.8.1 -> 0.8.2 +-------------- +* Add the 'X-Forwarded-Protocol' header directive in the apache configuration, as described in the admin guide +* Update 'attributes' table in mysql (backend): + + 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; + +* Update 'versions' table in mysql (backend): + + 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);