DB Update Procedures
When building scripts, you need to take into account your Rice server (if running a separate instance) All the database upgrade scripts are broken up on the assumption that you could have separate databases for these components of the Kuali infrastructure. KFS Upgrades are delivered via Liquibase files. This allows for the updates to be given in a database-agnostic fashion. They have been primarily written against Oracle, but have the needed adjustments to allow them to run under MySQL as well, and have been tested against both. For information on how to generate SQL from Liquibase scripts or apply them directly against a database, see the Running Liquibase Scripts section of the Liquibase the Database Coding Standards page, for the Liquibase Overview and Sample Scripts page.
Rice Database
Rice
...
These databse update scripts should be run before any KFS Financials upgrade scripts. Please see the KFS Technical Release Notes and Upgrade Notes in this KFS Documentation space for instructions on running these for a particular KFS Financials release.
However, in general, the The scripts will be split into client updates (to be run against KFS Financials database) and server updates (to be run against Rice database) and will be available at:
Financials:
...
kfs-ar/src/main/resources/org/kuali/kfs/
db/upgrades/oldVersion_newVersionmodule/ar/db/
rice-client-script.xmlphase5
kfs-bc/src/main/resources/org/kuali/kfs/module/bc/db
/upgrades/oldVersion_newVersion/rice_server/rice-server-script.xml
See the KFS section below for scripts which update the rice database with new/changed KFS data.
KFS Database
Note: The KFS upgrade scripts assume that the Rice database has already been updated with any additional data or structural changes.
KFS Rice Data Upgrade Scripts
With KFS there are updates to core Rice data tables. The scripts below need to be run against your Rice server database. If you are running with Rice embedded (no separate Rice server) then this will be your KFS database.
...
/phase5
kfs-cam/src/main/resources/org/kuali/kfs/module/cam/db/phase5
kfs-cg/src/main/resources/org/kuali/kfs/module/cg/db
...
Script | Notes |
---|---|
kew_upgrade.xml | Updated KEW data (ex: changes to doc types, such as help doc URLs) |
kim_upgrade.xml | Updated KIM data (ex: new/removed permissions/responsibilities) |
parameter_updates.xml | Updated Parameter data. |
KFS DB Updates
...
/phase5
kfs-core/src/main/resources/org/kuali/kfs/core/db/phase5
kfs-ec/src/main/resources/org/kuali/kfs/
...
module/
...
ec/
...
KFS DB Structure Updates
...
db/phase5
kfs-kc/src/main/resources/org/kuali/kfs/
...
module/kc/db/
...
Scripts under 01_structure are named by module and contain any necessary database structure updates (new tables, new columns, etc.) for the particular release. For example:
- coa-module-structure-updates.xml would contain any necessary structure updates for the COA module.
- puarp-module-structure-updates.xml would contain any necessary structure updates for the PURAP module.
- etc.
KFS DB Data Updates
...
phase5
kfs-ld/src/main/resources/org/kuali/kfs/
...
module/ld/db/
...
Scripts under 02_data are named by module and contain any necessary database data updates (new records, updated values, etc.) for the particular release. For example:
- coa-module-data-updates.xml would contain any necessary data updates for the COA module.
- puarp-module-data-updates.xml would contain any necessary data updates for the PURAP module.
- etc.
KFS DB Constraint Updates
These are done last to avoid any parent/child record issues.
...
phase5
kfs-purap/src/main/resources/org/kuali/kfs/module/purap/db/phase5
- kfs-tem/src/main/resources/org/kuali/kfs/
...
- module/tem/db/
...
Scripts under 03_constraints are named by module and contain any necessary database constraint updates (new foreign keys, unique constraints, etc.) for the particular release. For example:
- coa-module-constraint-updates.xml would contain any necessary constraint updates for the COA module.
- puarp-module-constraint-updates.xml would contain any necessary constraint updates for the PURAP module.
- etc.
KFS DB Optional Updates
...
- phase5
Rice:
- kfs-core/src/main/resources/org/kuali/rice/db/phase5