Forum OpenACS Q&A: Response to PostgreSQL 7.1 released

Collapse
Posted by Pascal Scheffers on
Unfortunately (for us) there were other patches applied to the Postgres CVS version of pg_dump after the code-freeze for 7.1. The patches seem to have dependencies elsewhere in the source tree. If I just swap the pg_dump from 7.1 with the CVS version, it crashes halfway down complaining about an OID not allowed to be NULL:
getTables(): SELECT (for VIEW ec_subsubcategories_augmented) returned
NULL oid
SELECT was: SELECT definition as viewdef, (select oid from pg_rewrite
where rulename='_RET' || viewname) as view_oid from pg_views where
viewname = 'ec_subsubcategories_augmented';
I checked the OID ordering patches, but they are not trivial enough to back-port them to the release version. Someone with more understanding of the Postgres source may be able to do it, but I might break something fundamental. If the Debian crew releases the deb packages for 7.1 before 7.1.1 is out, we might be able to snatch the patched version from them (they have a tendency to backport this kind of stuff). Although with just 15 days remaining before the 7.1.1 scheduled release... I don't think it is worth the effort.

OTOH, if you are not too concerned about the need to be able to restore a backup without some manual labor, 7.1.1 will be an update that does not require an initdb. So you could just go ahead and install it.

A work around for this problem might be to first load the OpenACS datamodel, including customization scripts from your 7.0, into 7.1 and then do a 'pg_restore -d your_db --data-only backup.sql' to restore the data. I will try that today or tomorow, if it works I will update my migration guide.

I found that after loading a fresh OpenACS-3.2.5 in 7.1 backup and restore were 100% okay. I am unsure about customizations, though...