OpenACS 5.1.4 / PG 7.3.6 => 5.2.3/8.0.7 Upgrade Path for acs-core
Extensively test this path on a staging server first.
Bring production site down
Post apache temporarily unavailable page on port 80.
Backup everything via script (no vacuum).
mkdir /var/lib/aolserver/service1-pre-upgrade-backup
cp -R /var/lib/aolserver/service1 /var/lib/aolserver/service1-pre-upgrade-backup
+pg 7.3.6 dump is under both trees
Disable backup/webalizer crontab
shutdown postgresql
Upgrade pg => 7.4.13
Import 7.3.6 dump into pg 7.4.13
Dump 7.4.13 db
shutdown postgresql
Upgrade PG 7.4.13 => 8.0.7
Import 7.4.13 dump
Make a restore point dump from 8.0.7
/usr/local/pgsql/bin/vacuumdb -U postgres -f -z -v service1
Upgrade oacs 5.1.4 => 5.2.3
-Copy conflict-resolved /packages and /www from testing to production site
-Bring production site back up on port 8080.
-APM-Install all required packages, below
++++++++++
acs-kernel
++++++++++
+Repair broken package installs where an acs_object exists without an apm_package
delete from acs_objects where object_id in (select o.object_id from acs_objects o left join apm_packages p on p.package_id=o.object_id where o.object_type='apm_package' and p.package_id is null);
Site-Wide Administration
API Browser
Automated Testing
Bootstrap Installer
ACS Reference Data
ACS Reference Data - Timezone
Service Contracts
Templating
ACS Translation Storage
Search
Authentication
Content Repository
+source manually: \i /var/lib/aolserver/service1/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.2.0a1-5.2.0a2.sql
+source manually: \i /var/lib/aolserver/service1/packages/acs-content-repository/sql/postgresql/upgrade/upgrade-5.2.1d1-5.2.1d2.sql
Then uncheck above and run from apm.
Ignore download_* view errors.
Documentation
Localization
Acs Mail
Acs Messaging
Acs Subsite
Acs Tcl
tsearch2-driver
--------------------
Search changed files
--------------------
search-procs.tcl
Install tsearch2 for pg
Remove unmounted search package
Reindex existing content for fs,news,forums,faq:
--File Storage--
insert into search_observer_queue (
select revision_id, current_timestamp, 'INSERT'
from cr_revisions r, cr_items i
where r.item_id = i.item_id and
i.content_type = 'file_storage_object' and
r.revision_id = i.live_revision and
(mime_type = 'application/pdf' or
mime_type = 'application/msword' or
mime_type = 'application/vnd.ms-word' or
mime_type like 'text/%'));
--News--
insert into search_observer_queue (
select revision_id, current_timestamp, 'INSERT'
from cr_revisions r, cr_items i
where r.item_id = i.item_id and
i.content_type = 'news' and
r.revision_id = i.live_revision);
--Forums--
insert into search_observer_queue (
select message_id, current_timestamp, 'INSERT'
from forums_messages );
--FAQ--
insert into search_observer_queue ( select entry_id, current_timestamp, 'INSERT' from faq_q_and_as );
Install forums, general-comments, notifications, workflow (oacs-5-2)
Install from APM: xotcl-core, xowiki (HEAD)
Apply pgrule-fix.sql
Vacuum DB
TEST
Bring down apache temp page
Switch nsd port back to 80
Restore crontab
Backup upgraded site.
Download pre and post backup.
TEST MORE.