Checks the database for data and structural integrity.


VALIDATE errorlogFile

errorlogFile Name and optional path of destination file for error messages. If no path is specified, the specified list file is stored in the current application\database directory.


This command validates the current database. You must select a database before issuing this command.

The VALIDATE command checks the following information:

  • Verifies data integrity in each block. Reading from top to bottom, it checks blocks, sections, block type, and block length. The command checks for validity in floating-point numbers. This command writes information about bad blocks to the log file.
  • Automatically compares every index key in the index page with the index key in the corresponding data block and checks other header information in the block. If it encounters a mismatch, VALIDATE displays an error message and continues processing until it checks the entire database.
  • Compares the data block key in the index page with the data block key in the corresponding data block. Keys out of order indicate corruption.
  • Verifies the structural integrity of the index free space information in the index.
  • Verifies the structural integrity of the LRO catalog.

If this command finds integrity errors, it writes validation process error messages to a text-format log file. The default location for the specified file is in the application\database directory. For example: ESSBASE\APP\app\db\VALIDATE.LST.


  • You can also use the VALIDATE command to clear an internal file, database_name.OCL, when it grows too large. database_name.OCL is a file used for incremental restructuring. VALIDATE causes Analytic Services to restructure any blocks whose restructure was deferred, and clears the file.
  • Before issuing the VALIDATE command, we recommend placing the database in read-only mode, using the ESSCMD BEGINARCHIVE or the MaxL statement alter database DBS-NAME begin archive to file FILE-NAME;