This page documents the use of admin tools to generate production data.
- MySQL database must already exist (e.g. "refset").
- MySQL database connection parameters must be defined in the properties file specified by "refset.config".
- The file system directory specified by the "hibernate.search.default.indexBase" in the properties file specified by refset.config must exist.
- IMPORTANT: The Tomcat server must not be running while this is invoked, otherwise indexes can get corrupted.
This tool is used to load data for the initial production system. It can be used after Create Database and Reindex Objects are independently run, or can be run with a "mode" parameter that causes those steps to be automatically run. This tool is an easy way to refresh the database with contents that can be used for testing.
Following are some details about the implementation of this tool:
Mojo: GenerateProdData.java (in admin/src/main/resources/java/org/ihtsdo/otf/refset/mojo)
- Profile "Prod"
- refset.config - the standard configuration file specified as a -D parameter
mode - "create" will destroy the database and indexes and recreate them before loading sample data. any other value than "create" will assume those prior steps have already been run.
- The production system was deployed using this.
Sample command line call of the admin tool to recreate a database, clear indexes, and load sample data:
The main issue with running "Prod" has to do with the max_allowed_packet setting from MySQL being large enough. A value of 200M should suffice. This is because the entire SNOMED Spanish translation data artifact needs to be loaded as a single query and it is rather large. A similar configuration may be needed to be able to successfully download large artifacts for other large translations (as they are stored in the database as binary data).