This page documents the use of admin tools to perform an RF2 release of mapping project data.
Prerequisites
- MySQL database must already exist (e.g. "mappingservicedb").
- MySQL database connection parameters must be defined in the properties file specified by "run.config".
- Create/Update DB mojo must also have already run so that the database schema exists and data is loaded.
- A map project must exist for the specified refset id and have publication ready records.
- IMPORTANT: The Tomcat server must not be running while this is run, otherwise indexes can get corrupted.
Details
There are three stages to the process (see Performing an RF2 Release):
- Begin a release
- Verify all map records are publication ready
- Validate all map records for the project
- Generate a "release QA report"
- Remove map records for retired/out of scope concepts (if not in test mode)
- Process a release - iterate over this until perfect
- Create RF2 delta files
- Create "active snapshot" human readable files
- Create "true snapshot" file
- Create a statistics report
- Finish a release
- Mark READY_FOR_PUBLICATION records as PUBLISHED
- Update the "complex map refset members" table to reflect the published/snapshot state (for future comparisons).
Following are some details about the release tooling implementations:
Mojo: ReleaseBeginMojo.java (in admin/mojo/src/main/resources/java/org/ihtsdo/otf/mapping/mojo)
Project: admin/release
Configuration Parameters
- A profile of "BeginRelease" must be specified
- run.config - the standard configuration file specified as a -D parameter
- refset.id - the refset id of the mapping project to release specified as a -D parameter
- A map project with this refset id must exist
- test.mode.flag - a flag indicating whether to run in test mode, which avoids making database changes, defaults to false
- NOTE: this mojo will avoid making database changes if any of the validation steps fail.
Mojo: ReleaseProcessingMojo.java (in admin/mojo/src/main/resources/java/org/ihtsdo/otf/mapping/mojo)
Project: admin/release
Configuration Parameters
- A profile of "Release" must be specified
- run.config - the standard configuration file specified as a -D parameter
- refset.id - the refset id of the mapping project to release specified as a -D parameter
- A map project with this refset id must exist
- output.dir - the output directory specified as a -D parameter
- time - the date to use for the effectiveTime of the RF2 files created
- module.id - the moduleId to use for the RF2 files - this is specific to the individual map project.
- test.mode.flag - a flag indicating whether to run in test mode, which avoids making database changes, defaults to false
Mojo: ReleaseFinishMojo.java (in admin/mojo/src/main/resources/java/org/ihtsdo/otf/mapping/mojo)
Project: admin/release
Configuration Parameters
- A profile of "FinishRelease" must be specified
- run.config - the standard configuration file specified as a -D parameter
- refset.id - the refset id of the mapping project to release specified as a -D parameter
- A map project with this refset id must exist
- input.file - the final RF2 snapshot file from the release process to reload
- test.mode.flag - a flag indicating whether to run in test mode, which avoids making database changes, defaults to false
Samples
Sample command line call of the RF2 release tooling to begin a release for refset 447563008:
% cd ~/code/admin/release % mvn install -Drun.config=/home/ihtsdo/config/config.properties -PBeginRelease -Drefset.id=447563008
Sample command line call of the RF2 release tooling to process a release for refset 447563008:
% cd ~/code/admin/release % mvn install -Drun.config=/home/ihtsdo/config/config.properties -PRelease -Drefset.id=447563008 -Doutput.dir=/home/ihtsdo/data/doc/release -Dmodule.id=900000000000207008 -Dtime=20150131
Sample command line call of the RF2 release tooling to finish a release for refset 447563008:
% cd ~/code/admin/release % mvn install -Drun.config=/home/ihtsdo/config/config.properties -PFinishRelease -Drefset.id=447563008 -Dinput.file=/home/ihtsdo/data/doc/release/der2_iisssccRefset_ExtendedMapSnapshot_INT_20150131.txt
Sample Eclipse run configuration to begin a release for refset 447563008:
Sample Eclipse run configuration to process a release for refset 447563008:
Sample Eclipse run configuration to finish a release for refset 447563008:
Troubleshooting
The most likely issue is that QA errors are discovered in the generated files. This step can be repeatedly re-run until the results look right, including edits along the way to the underlying data (as long as mid-stream workflow states are not created).
Another way to avoid problems is to run the process in a cloned environment (e.g. UAT) which supports the ability to revert to the initial state at any time without interfering with production activities.
References/Links
- n/a