Upgrading to 2.2+

Our plans for the July 2012 upgrade of Conifer are to upgrade to the latest version for 2.2 -- 2.2.1 real soon now -- plus some additional branches reflecting functionality that we require for functionality in Conifer.

List of additional branches

In the past, we've created a "mergery" branch in the Conifer repo that represents what we have installed into production; we'll do the same again for rel_2_2. This will list the merge branches and the reasons why we want them.

Additional core branches

Additional Conifer branches

From the Conifer repository:

  • feature/patron-privacy_2_1 "Remove display of patron birthdate, internet access level, etc" from patron display in staff client - tip of branch
    # Just need the tip of the branch
    git cherry-pick conifer/feature/patron-privacy_2_1
    # And some merge conflict work
    git status # shows the files with conflicts
    # edit file
    git add <file>
    git commit
  • feature/admin_hours_2_1 "Robin's interface for managing library hours" - top two commits from branch; candidate for reworking as a core feature, adding an entry point to the Admin menu instead of the splash page
    # Need the top two commits in the branch:
    git cherry-pick dfe87c5b63c26d85462e4aba6228547533774665
    git cherry-pick 704fe1027e3adf71523f59636fb828e044412f0f
  • feature/circ_rules_2_1 "JavaScript?-based circulation rules for Conifer" - self-explanatory, but raises the question of when we're going to move to in-database circulation... time is ticking
    # Use "tig" command-line interface to pick the top commits off the branch
    # "C" will cherry-pick the selected commit
    tig conifer/feature/circ_rules_2_1
  • feature/fts-polish-l_2_1 - "Treat a Polish l as an ASCII l in full-text search" - note: double-check to ensure this is still a requirement
    # Just the tip of the branch
    git cherry-pick conifer/feature/fts-polish-l_2_1
  • feature/journal_title_2_1 - "Adds journal title search to JSPAC" - obviously required for JSPAC only
    # Just need the tip of the branch
    git cherry-pick conifer/feature/journal_title_2_1
  • feature/skins-bulk_2_1 - All of the JSPAC skins for the Conifer sites live here
  • feature/tools_2_1 - Really just need commit 55193954e1c which adds the - this is a good candidate for genericizing and contributing to Evergreen core
    git cherry-pick 55193954e1c
    # Resolve merge conflict -- good candidate for Evergreen core

Getting the rel_2_2_mergery branch

  1. Add the Conifer remote git repository:
    # If you have an SSH pubkey with privileges:
    git remote add conifer
    # For a read-only copy of the repo instead:
    git remote add conifer git://
  2. Fetch the branches/commits from the new remote:
    git fetch conifer
  3. Check out the rel_2_2_mergery branch:
    git checkout -b rel_2_2_mergery conifer/user/dbs/rel_2_2_mergery

Apply database schema upgrades

Normally all of this would be in one big upgrade script, for example Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-version-upgrade.sql, but on the test server we opted to just apply the remaining individual scripts manually.

psql -U evergreen -h hostname -v eg_version="'0704'" -f Open-ILS/src/sql/Pg/upgrade/0706.schema.serial-holding-code-constraint.sql

To do

  • Upgrade PostgreSQL to 9.1 on production server
    • Dump the production database, blow away the database on darkmatter, restore, and run the upgrade script - Dan
    • Try in-place upgrade on replica server first!
  • Create and test upgrade script for 2.1-2.2 (needs 2.1.0-2.1.1 along the way, along with any of our backported schema changes) on the test server
  • Create and test auto-upgraded staff client
  • Suppress "bib call number" search indexes in TPAC
    • Done as of commit 1a25314
  • Suppress empty reviews field in record details
    • Done as of commit eeb0fb3332c
  • Modify display of MFHD periodical holdings in TPAC -- display above "Available copies" instead of requiring an extra click in the Extras section
    • Done as of commit eeb0fb3332c
  • Provide skinning for the TPAC
    • Current convention is templates_HOSTNAME in eg.conf per hostname
    • For style.css, rough plan is to templatize style.css such that the common colours are defined in an included file; then each site can add a template override for that included file (we want to avoid having to maintain copies of a 1,000-line base CSS file in each skin)
  • Hide holds on available items (pretty sure that there's a configuration parameter for that in TPAC now)
    • Done - thanks Art! Need to sort out whether search_ou is the best OU parameter on which to hang our hats, but it will probably cover 95% of the cases
  • Resolve data quality problems for records without 901 fields
    • Done - about 125 "bad" MARC records out of 99,000 total that were processed (where "bad" means tags with only 1 or 2 digits and the like)
  • Merge and test JSPAC skins
  • Convert from JavaScript? circ scripts to in-database
Last modified 10 years ago Last modified on Jul 27, 2012, 5:33:23 PM