Revision Update
The Revision Update option allows the monitoring and cleanup of the REPORT tables and allows you to perform the revision backup and rollback procedure. The SFX database of each instance contains the following REPORT tables that store information about changes, additions, and deletions performed in the SFX database as part of the revision update:
- KB_AUTHORS_REPORT
- KB_CAT_ASSIGN_REPORT
- KB_CAT_REPORT
- KB_CAT_SUBCAT_REPORT
- KB_INTERFACES_REPORT
- KB_LINKING_PARAMETERS_REPORT
- KB_MULTILANGUAGE_REPORT
- KB_OBJECTS_REPORT
- KB_OBJECT_IDENTIFIERS_REPORT
- KB_OBJECT_PORTFOLIOS_REPORT
- KB_PUBLISHERS_REPORT
- KB_RELATIONS_REPORT
- KB_SORTING_ORDER_REPORT
- KB_SOURCES_REPORT
- KB_SOURCE_SERVICES_REPORT
- KB_SUBCAT_REPORT
- KB_TARGETS_REPORT
- KB_TARGET_SERVICES_REPORT
- KB_TITLE_KEYS_REPORT
- KB_TITLE_REPORT
- KB_VENDORS_REPORT
- LCL_CAT_ASSIGN_REPORT
- LCL_LINKING_PARAMETERS_REPORT
- LCL_OBJECT_IDENTIFIERS_REPORT
- LCL_OBJECT_PORTFOLIO_INVENTORY_REPORT
- LCL_OBJECT_PORTFOLIO_LINKING_INFO_REPORT
- LCL_SERVICE_INVENTORY_REPORT
- LCL_SERVICE_LINKING_INFO_REPORT
- LCL_SOURCE_SERVICE_INVENTORY_REPORT
- LCL_TARGET_INVENTORY_REPORT
- LCL_TARGET_LINKING_INFO_REPORT
- LCL_TITLE_REPORT
These tables are used when creating HTML and TXT reports in the KBUpdate section of the SFX Admin Center.
To access this option, select 9 Revision Update from the main menu. The Revision Update menu is displayed:
Revision update
1 Clean REPORT tables
2 Show REPORT tables monitor information
3 Revision backup/rollback
|
To schedule a cleaning of the REPORT tables, select 2 Schedule cleaning REPORT tables. All reports but the ones for the last three revisions are removed.
Clean REPORT Tables
To remove information from the REPORTS tables, select 1 Clean REPORT tables from the Revision Update menu. The following is displayed:
Revision update
1 Clean REPORT tables
2 Schedule cleaning REPORT tables
3 List scheduled tasks
|
To clean the REPORTS tables, select 1 Clean REPORT tables. The following is displayed:
WARNING! This utility goes to delete records from GLOBAL database and from ALL local databases. You can run this utility as global user only! Please enter sfxglb41 password Password: |
Type the password. Information on the revision reports currently stored in the tables is displayed. For example:
The REPORT tables contain information about the following revisions:
[1] 20101001 - run on 09/01/2010 12:27
[2] 20101201 - run on 20/12/2009 12:29
[3] 20091101 - run on 15/11/2009 12:43
Would you like to remove any of these? [y/N] y
Please enter the report set to remove or press <ENTER> to cancel: 2
20101201 from 20/12/2010 12:29 - Confirm deletion of report data [y/N] y
|
Type the number of the report that you would like to remove.
Each revision has a revision number in the following format:
<YYYY><REV_NR><HOTFIX_NR>
This number consists of the year in which the revision was issued, a two digit revision number, and a two digit hotfix number (typically 00, but it can be a different number in case of hotfixes or if a revision consists of multiple packages of the same type).
Revisions can be run multiple times. Each revision run is listed separately with the run time even though they are for the same revision. The same revision can also be listed several times due to hot fixes. When cleaning the REPORT tables, only one listing of each the last twelve revisions is not deleted. Duplication prevention reports (which end with 99) are not considered as a revision and are deleted.
It is recommended to remove the HTML reports of all but the twelve most recent revisions to reduce database size.
Schedule Cleaning REPORT Tables
To schedule a cleaning of the REPORT tables to occur at a later time, select 2 Schedule cleaning REPORT tables. You are asked to define the time and day for which you want to schedule the task.
When scheduling cleaning of REPORT tables, all reports except the ones for the last three months are removed.
List Scheduled Tasks
To display a list of scheduled tasks, select 3 List scheduled tasks.
Show REPORT Tables Monitor Information
Select 2 Show REPORT tables monitor information from the Revision Update menu to display the amount of data in each of the REPORT tables.
For example:

Report Tables Monitor Information
If this option is run as the sfxglb41 user, only the KB_ report tables are displayed. If this option is run as a local user, then both the KB_ and LCL_ report tables for that local instance are displayed.
Revision Backup/Rollback
When performing a periodic revision update, a backup is of all directories and database tables that may be affected by the update is automatically performed. This backup allows a rollback to the pre-revision state of the server in case a problem occurs during the revision update. A rollback allows for all SW, KBSW, and KBDB package changes to be rolled back in case of problems.
If multiple KBDB revisions are applied at the same time, an additional temporary backup of all databases is created before the KBDB revision update starts. This temporary backup is removed from the server after the databases are successfully updated. The purpose of this temporary backup is to make it easier to do a rollback to the state of the database before that particular KBDB package was applied.
For more information about backups performed during the revision update, refer to the SFX KnowledgeBase Update section of the SFX Advanced User's Guide.
Contact your local Ex Libris Support Center if you encounter problems while applying an update. You will receive advice on whether a rollback is needed and whether to use a complete rollback or a one-instance rollback.
When choosing to perform a rollback, SFX is unavailable for two short periods of time, so schedule accordingly.
SFX is unavailable in the following situations:
- During part of the resetting of the prefix for each local instance (maximum of 5 minutes per instance)
- During the rollback of the sfxglb41 folders (approximately 5 minutes of downtime)
All rollbacks must be performed by the sfxglb41 UNIX user.
Complete vs. Database - Only Rollback
The complete rollback is recommended since it provides a completely automated rollback to the pre-revision state of the SFX server.
It is also possible to do a database-only rollback. However, make sure to always consult with SFX support staff before performing the database only rollback, because of the following potential issues:
- An analysis of the problem during the revision update is needed to make sure the problem does not reoccur.
- In some service packs released together with some revision updates, database changes are made via a script. Rolling back the database without the service pack scripts being rerun afterwards results in missing changes in the SFX databases
A database only rollback may be used if multiple KBDB revisions are applied on the server, and the revision fails when applying the second or later revision (not the first one). Rolling back the SFX database to a point before the problem occurred may take less time than rolling back completely to a pre-revision point. Consult with the SFX support staff before starting the database-only rollback to ensure that this is the rollback that is most appropriate for you.
Performing a Complete Rollback
The complete rollback must be performed as the sfxglb41 user. At the end of the process, Apache must be restarted for all the instances. Ensure that you have the UNIX passwords for all SFX instances. During the complete rollback, the following takes place:
- All database tables updated during the revision update are rolled back to their pre-revision state.
- The .sfx_history file is restored to its pre-revision state.
- Any lock files created after an unsuccessful revision update are removed.
- At the end of the process, the sfxglb41 Apache server is restarted.
- All files from the sfxglb41 instance in the following directories are rolled back:
- admin
- cgi
- lib
- config
- kbdb-reports
- dbs/sqltab
- sfxadmin
- templates
During the complete rollback, it is important that the sfxglb41 instance has the correct file permissions for the directories that were backed up. Also, do not edit any files in these directories during the rollback, since locked files cause the rollback to completely or partially fail. If a rollback fails, the rollback process has to be repeated.
To perform a complete rollback:
- Log on as sfxglb41.
- Type sx.
- Type ./admin/server_admin_util.
- Select 9 Revision update to access the revision update option.
- Select 3 Revision backup/rollback. The Revision Backup/Rollback menu is displayed:
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]: 2
|
- Select 2 Full Rollback in order to start the revision rollback. A list of backups is displayed.
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]: 2
1: 2008-01-05_13.30-Automatic_pre-revision_backup
2: 2008-02-10_16.53-Automatic_pre-revision_backup
|
- Type the archive number for the backup file you would like to use for the rollback. Usually you need to choose the backup file created the last time the revision was applied. The following is a sample output:
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]: 2
1: 2008-01-05_13.30-Automatic_pre-revision_backup
2: 2008-02-10_16.53-Automatic_pre-revision_backup
Please enter archive number [1..2] to rollback or q for exit: 2
Preparing restore...
Initializing rollback...
Checking permissions...done
Removing .lock files...done
Validating rollback folder...done
Creating temporary folder for rollback...done
Unpacking backup archive...done
Preparing done
Restoring full backup...
Restoring KB backup...
Getting list of instances...done
Restoring KB of 'sfxlcl41' instance...
Restoring Data...done
Resetting prefixes...done
Done
|
Restoring KB of 'sfxtst41' instance...
Restoring Data...done
Resetting prefixes...done
Done
Restoring KB of 'sfxlcl41' instance...
Restoring Data...done
Resetting prefixes...done
Done
KB rollback done
Restoring 'sfxlcl41' software...
Restoring folder 'admin'...done
Restoring folder 'cgi'...done
Restoring folder 'config'...done
Restoring folder 'lib'...done
Restoring folder 'sfxadmin'...done
Restoring folder 'sqltab'...done
Restoring folder 'templates'...done
SW rollback done
Restoring History...done
Rollback done
Finalizing rollback...
Removing temporary files...done
Executing 'restart' for 'sfxlcl41'.
Finalizing rollback done
|
- After the rollback, restart the Apache of all SFX instances. Select 1 Start/Stop services from the main menu of the Server Admin Utility and then select 11 All Apache restart. You need the UNIX passwords for all of the SFX instances to restart Apache.
Performing a Database-Only Rollback
To perform a rollback of all databases to the state of the databases before the start of a specific KBDB revision, run the rollback as the sfxglb41user. Always consult with SFX support staff before performing the database-only rollback, because of the following potential issues:
- An analysis of the problem during the revision update is needed to make sure the problem does not reoccur.
- In some service packs released together with some revision updates, database changes are made via a script. Rolling back the database without the service pack scripts being rerun afterwards results in missing changes in the SFX databases.
To perform a database-only rollback:
- Log on as sfxglb41.
- Type sx.
- Type ./admin/server_admin_util.
- Select 9 Revision update to access the revision update option.
- Select 3 Revision backup/rollback. The following screen is displayed:.
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]: 4
|
- Select 4 Rollback database (global and all local) to specific revision to start the database-only rollback. The following is displayed:
Choose from which full backup file:
1: 2010-04-22_13.50-backup_before_revision_20100200
2: 2010-04-23_15.03-backup_before_revision_20100300
3: none
Please enter archive number [1..3] to rollback or q for exit:
|
- Enter an archive number. The following is displayed:
Please enter archive number [1..5] to rollback or q for exit: 1
Preparing restore...
Initializing rollback...
Checking permissions...done
Removing .lock files...done
Validating rollback folder...done
Creating temporary folder for rollback...done
Unpacking backup archive...done
Preparing done
Restoring full backup...
Restoring KB backup...
Getting list of instances...done
Restoring KB of 'sfxglb41' instance...
Restoring Data... done
|
The rollback program now locates the backup file to be used for the rollback. First it looks for a temporary backup file in the /exlibris/sfx_ver/sfx4_1sfx_version_3/tmp/backup> directory.
Performing a Backup
It is possible to perform a manual revision backup to test that the backup works properly. The backup files are created in the /exlibris/sfx_ver/sfx4_1/tmp/backup directory.
To perform a backup:
- Log on as sfxglb41.
- Type sx.
- Type ./admin/server_admin_util.
- Select 9 Revision update to display the Revision Update menu.
- Select 3 Revision backup/rollback. The Revision Backup/Rollback menu is displayed:
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]:
|
- Select 1 Full Backup.
- Enter the backup name.
The following is a sample output:
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]: 1
Please enter backup name or q for exit: backup-test
Creating full backup...
IMPORTANT NOTE: This backup includes limited number of software folders and KB tables. It is not a replacement for system backup!
Initializing backup...
Checking permissions...done
Validating backup folder...done
Creating temporary folder for backup...done
Creating KB backup...
Getting list of instances...done
Backup KB of 'sfxlcl41' instance...done
Backup KB of 'sfxtst41' instance...done
Backup KB of 'sfxtst41' instance...done
KB backup done
|
Creating SW backup...
Storing folder 'admin'...done
Storing folder 'cgi'...done
Storing folder 'config'...done
Storing folder 'lib'...done
Storing folder 'sfxadmin'...done
Storing folder 'sqltab'...done
Storing folder 'templates'...done
SW backup done
Creating History backup...done
Finalizing backup...
Creating rollback script...done
Creating backup archive...done
Removing temporary files...done
Backup done
|
Cleaning the Backup Directory
It is possible to remove old backup files. It is recommended to remove complete backup files about a month after the revision update has been successfully applied, before applying the next revision update.
The complete backup files are located at: /exlibris/sfx_ver/sfx4_1/tmp/backup.
To clean the backup directory:
- Log on as sfxglb41.
- Type sx.
- Type ./admin/server_admin_util.
- Select 9 Revision update to access the Revision Update menu. The Revision Backup/Rollback menu is displayed:
Revision Backup/Rollback
1 Full Backup
2 Full Rollback
3 Clean backup archives
4 Rollback database (global and all local) to specific revision
Please select [1-4,q,m]: 3
|
- Select 3 Clean backup archives. A list of the available backup files is displayed:
1: 2008-04-07_10.27-Automatic_pre-revision_backup
2: 2008-04-07_21.59-Automatic_pre-revision_backup
3: 2008-04-07_22.27-Automatic_pre-revision_backup
Please enter archives to remove (for example 2,3,4-8) or q for exit: |
- Type the number of the backup file that you want removed.
1: 2008-04-07_10.27-Automatic_pre-revision_backup
2: 2008-04-07_21.59-Automatic_pre-revision_backup
3: 2008-04-07_22.27-Automatic_pre-revision_backup
Please enter archives to remove (for example 2,3,4-8) or q for exit: 1
Removing '2008-04-07_10.27-Automatic_pre-revision_backup' archive...done
|