Free cookie consent management tool by TermsFeed Validate Engine Integrity [Server Administration]
Validate Engine Integrity

Overview

The validate.bat (.sh) script checks the integrity of all Appian Engines, and is located in the following directory: <APPIAN_HOME>/server/_scripts/diagnostic/.

This script has a validateIntegrity component, which checks for the data type to determine any instances in which the actual data is different from expected data type. It also performs cyclic parent checks, column value checks, bi-directionality, and other tests such as data-leak detection. The default output of this component is the test summary and number of errors encountered. Appian Engines must be running for this component to work.

CAUTION: Running the validation script is CPU intensive, and the server may be unresponsive for the duration of the validation (particularly during a complete validation). It is recommended that administrators run the validation script only during maintenance downtime or in a testing environment.

Script Usage

The validation script accepts three arguments – the level of completeness, the name of the engine, and the gateway ID being validated.

To get the correct usage information, execute the validate script with -help as a parameter. The console output is shown below:

Usage: validate </c[omplete]> <engine> [Gateway Id]
/c[omplete]: Optional. Requests a complete, but slower, validation.
engine:  The name of the engine can include any of the following 
           forums
           notify
           notify-email
           channels
           content
           collaboration-statistics
           personalization
           portal
           process-design
           process-analytics
           process-execution0
           process-execution1
           process-execution2
gateway Id: The ids of the gateways being validated.
            Defaults to query all gateways.
For example:
    validate /c portal 1

Options

Parameter Description
/c

Completeness: A complete validation runs the complete set of validation functions on all data structures and their associated data. This may take a long time, especially if there is a large amount of data to validate. The "quick" validation runs a select class of validate functions and is less intensive than the complete validation.

  • If the first argument is not specified, a quick validation is performed.
  • When the first argument is /c, a complete validation is performed.
  • The complete validation is CPU intensive, and the server may be unresponsive for the duration of the validation. It is recommended that administrators run the complete validation only during maintenance downtime.
<engine>

Engine Name: The second argument is the name of a particular service. The following Appian engine names are allowed.

  • forums
  • notify
  • notify-email
  • channels
  • content
  • collaboration-statistics
  • personalization
  • portal
  • process-design
  • process-analytics
  • process-execution0
  • process-execution1
  • process-execution2

You must specify an engine name.

<gateway Id>

Gateway: Gateways are numbered 1, 2, or 3 (for gw1, gw2, or gw3). A default Appian instance has a single gateway for each engine (gateway ID=1). Up to two additional gateways can be added to each engine. If you have multiple active gateways, you can validate them one at a time by specifying the gateway number. For example, to perform a quick validation of gateway 3 for process-execution0, type the following commands.

validate process-execution0 3

This parameter is optional.

Script Output

In this section, we will review the output of the validation script and how it can be used to debug data corruption issues. In the following example, all services are running using three different gateways on a single engine server.

When the script is executed, it lists the results in the following log file.

<APPIAN_HOME>/admin/validation/#_validation.log

A successful execution of a validation script on the personalization service also generates console output that is similar to the following result.



Validating engine personalization on gateways 1.

============
Gateway Id 1
------------
Application Name: Personalization
Thoroughness: Quick 
Errors Found: 0
Errors Found by SDL: 0
Full Report Available at: file://server.example.com/C:/APPIAN_HOME/_adm
in/validation/0_validation.log
Elapsed Time Total: 1437.5 ms
============
Open in Github Built: Fri, Mar 01, 2024 (07:37:27 PM)

Validate Engine Integrity

FEEDBACK