[OPEN-ILS-DEV] Upgrade RC2 to RC3

Jason Stephenson jstephenson at mvlc.org
Thu Jan 27 12:24:47 EST 2011


Grant, et al.

I want to preface the below with a giant caveat: I DO NOT RECOMMEND  
THE FOLLOWING ON PRODUCTION SYSTEMS.

I recommend installing from a SVN checkout if you want to a  
development branch and not have to rebuild/repopulate your database.

When you install from SVN, the config.upgrade_log table gets an entry  
with a numeric string value of the database version, "0478" for  
instance. When you update your SVN working copy to update your  
installation, there will be a group of SQL files in the  
Open-ILS/src/sql/Pg/upgrade directory whose names are prefixed with  
version strings. After or before installing the new code, you simply  
need to run each of these scripts on your database one at a time, in  
order, beginning with the first one numbered after your current  
database version.

For instance, if your version is 0478 and the newest upgrade file is  
now 0485, you will want to run the files that begin with 0479 to 0485  
in order to get to the latest database version. The config.upgrade_log  
will now have an entry for every version that you upgraded. The next  
time that you update, you'll want to begin with the next file after  
the highest version string in config.upgrade_log. In our hypothetical  
case, that would be the file beginning with 0486.

When you install Evergreen from a tarball (a .tar.gz file), the  
config.upgrade_log is not currently set with the latest database  
version number in the same way that it is set from a SVN checkout.  
This means that there is no easy way to upgrade your database without  
running eg_db_config.pl and recreating the schemas thereby losing all  
of your data.

NOTE: The SVN checkout works best if you intend on following the  
latest version of some branch: rel_2_0 for example. If you really do  
want to only upgrade to point updates, then installing from a tarball  
and following the upgrade instructions and running the included  
upgrade instructions is the best way to go.

This being the -dev list, I thought the above information would be  
useful for those who wish to follow the latest development in a test  
or development environment. For most production systems, I'd recommend  
using tarballs and point release upgrade scripts.

HtH,
Jason


More information about the Open-ils-dev mailing list