Authoring environment schema update tool
The content management solution in HCL Commerce introduces multiple database schemas on the authoring environment that require each and every table to have a definition within each schema. The definition within the workspaces schemas differ depending on whether the table is considered to be one of the following resources:
- Managed content resource
- Operational resource
- Unmanaged resource
These resources are specified in the resource.xml configuration files (all unspecified tables are considered unmanaged resources).
During instance creation of the authoring environment, new database schemas are created based on all the tables and views defined in base schema at the time. Previously, if the base schema was modified in any way, for example new tables were added or fix packs installed, the authoring schemas were updated manually. With the introduction of the authoring environment schema update tool you can now update the workspaces schema easily.
The authoring update tool makes the customization and installation process simpler, by having the workspace management schemas allocated, calibrated or patched by running an Ant script in the server environment, and a batch file in the development environment. This means that when you change the schema, you can run the Ant script or batch file on an authoring environment and determine any new tables that must be managed into the workspace schemas. As a result, you will no longer have to follow the manual steps to adjust the workspace schemas. You can also use this tool to adjust your workspace schemas when you create your own content managed resources. If you introduce new tables, you can run the Ant script or batch file through a command line interface.
The following Ant scripts are used in the server environment:
- UpdateWorkspacesSchemaTable
- UpdateWorkspacesSchema
The following batch files are used in the development environment:
- UpdateWorkspacesTable.bat
- UpdateWorkspacesSchema.bat
When to use the authoring environment update tool
Supported functions
The authoring environment update tool supports the following functions:
- Adjusts the workspace schemas according to the resource type of the table in the following
situations:
- You add new tables to the base schema. Note: Content-managed tables must have a primary key defined.
- You increase the size of a column in any existing table in the base schema.Note: Only column types that are allowed to be increased by the ALTER SQL command will be adjusted. The list of column types supported for column size increase are VARCHAR and VARCHAR2.
- You change an existing non-managed type table to a content-managed type table.
- You change an existing non-managed type table to an operational type table.
- You add new tables to the base schema.
- Adds new columns to all of the corresponding workspace tables according to the resource type of the table.
- Adds new indexes or deletes existing indexes for any existing table.
- Gives users the option to generate the "update SQLs" statement to a file or have the tool directly implement the "update SQLs" statement.
Non-supported functions
The following functions are not provided by the workspace schema update tool:
- Changing an existing content-managed type table to a non-managed type table. This is not supported because it requires removing tables from the existing workspaces and can result in data loss. It is recommended that you do a manual update to the workspace as described in the customization guide for this scenario.
- Changing an existing operational type table to a non-managed type table. This is not supported because it requires removing tables from the existing workspaces and can result in data loss. It is recommended that you do a manual update to the workspace as described in the customization guide for this scenario.
- Dropping a table in the base schema. This is not supported as the recommended way for removing a table in HCL Commerce is by deprecating a table and not dropping a table. If you must drop a table, it is recommended to do a manual update to the workspace as described in the customization guide.