Previous Page TOC Next Page



- C -
Index Server Error Messages


Microsoft Index Server provides a wealth of error and informational messages to users and administrators of Index Server. These messages generally result from some error condition, lack of a required system resource, or other events of which users or administrators need to be aware. This appendix provides information on the following topics:


Index Server Error-Message Categories


Index Server error conditions typically fall under one of the following four categories:

Error conditions falling outside these four main error categories are typically referred to as other system errors

Index server also provides a limited number of informational messages. These informational messages are indicated, where appropriate, in subsequent sections of this appendix.

Index Server Error-Reporting Methods


Index Server provides the two basic methods for reporting error conditions. Generally, users can expected to only see HTML error pages precipitated by query-syntax error conditions. The extent to which users are subjected to such messages can be controlled through the use of customized HTML forms. Index Server administrators, on the other hand, are privy to the vast number of error and informational messages that are logged and viewable via the Windows NT application event-logging system.

Notifying Users of Errors via HTML Pages


Three categories of errors always result in the generation of an HTML page to the user:

The page returned for each of these error categories of error is specified by registry key entries placed under the following path:


HKEY_LOCAL_MACHINE

  \SYSTEM

    \CurrentControlSet

      \Control

        \contentindex

          \language

            \<language>

Figure C.1 illustrates these registry settings for the samples that are installed when Index Server is installed. These show registry key names and associated values for a set of standardized and fully modifiable HTML extension (.htx) files, which are used to format and return HTML error pages to the user.

Figure C.1. HTML error-page registry entries.

The registry keys of interest in Figure C.1 include

The CiErrorMessage variable in these .htx files contains a string that describes the error being reported, while the CiErrorNumber variable contains the error code.

Messages Due to Query Syntax Errors

Table C.1 contains a number of error messages generated and returned to the user when a query syntax error is encountered by Index Server. These messages are returned in the CiErrorMessage variable, which is accessible from the .htx error page specified by the ISAPIRestrictionErrorFile registry entry. Each message is accompanied by a brief description of the error condition.

Table C.1. Error messages returned to the user when Index Server encounters a query syntax error.

Error Message String Description of Error Condition
Expecting closing parenthesis ')'. Typically indicates that sets of parentheses in a query are mismatched.
Expecting closing square bracket ']'. Indicates that the opening square bracket in a query was not followed by a corresponding closing bracket. This typically occurs when a component in a vector query is incorrectly weighted using bad syntax.
Expecting comma. Occurs when Index Server detects a reserved token or end-of-string in a query before the closing brace of a vector property, such as @VectorString = {C1, F@}.
Expecting currency. Occurs when an expected currency value is not found in a query. In other words, a property of type DBTYPE_CY received incorrect input. The proper format for currency values is #.#.
Expecting date. Occurs when an expected date value is not found in a query. In other words, a property of type DBTYPE_DATE received incorrect input. Valid formats for absolute dates are yyyy/mm/dd, yyyy/mm/dd hh:mm:ss. Valid formats for relative dates are -#y, -#m, -#w, -#d, -#h, -#n, -#s.
Expecting end of string. Indicates that additional input exists after a complete query restriction has been parsed, such as (@myvalue = 50) mysample.
Expecting GUID. Occurs when an expected globally unique identifier was not found in a query. In other words, a property of DBTYPE_GUID received incorrect input. The valid property format for a GUID is XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.
Expecting integer. Occurs when an expected integer value was not found in a query. In other words, a property of integer type, such as DBTYPE_I4, received an incorrect input, (such as a nonnumeric value or a nonnumeric vector weight).
Expecting phrase. Occurs in a variety of situations when an expected textual phrase is not found in a query. In other words, the Index Server query parser detected a special token rather than the plain text it was expecting.
Expecting property name. Occurs when a correctly formed property name is not found after an @ sign in a query.
Expecting real number. Occurs when an expected real value was not found in a query. In other words, a property of a real type, such as DBTYPE_R4, received a nonnumeric value.
Expecting regular expression. Occurs in a variety of situations when the Index Server query parser is in regular-expression parsing mode. An expected regular expression was either not found in the query or was malformed.
Invalid literal. Indicates that a query property has been poorly or incorrectly formatted. Reference the description of the error condition for Expecting Integer, Expecting Real, and so on for additional information on possible causes and conditions.
No such property. Occurs when a property specified after @, #, or $ in a query does not exist. In other words, it is not a default property nor is it specified in the [] section of the .idq file.
Not yet implemented. Indicates an attempt to invoke an unimplemented feature of Index Server.
Out of memory. Occurs when the server has insufficient memory resources to process the specified CiRestriction.
Regular expressions require a property of type string. Indicates that a property of a non-textual type, such as DBTYPE_I4, was used in a query in regular-expression mode. For example, #size 752* would generate this error.
The file <file> is on a remote UNC share. .idq, .ida, and .htx files cannot be placed on a remote UNC share. Indicates that an .idq, .ida, or .htx file was detected on a remote UNC share. None of these file types can be on a remote UNC share.
Unsupported property type. This message was included to support future expansion and will be generated when a display-only property type is used in a query restriction.

Messages Due to Internet Data Query File Errors

Table C.2 contains a number of error messages generated and returned to the user when an Internet data query (.idq) file syntax error is encountered by Index Server. In these messages, <file> indicates the name of the .idq file in question, while <line> indicates the line number where the error was detected. These messages are returned in the CiErrorMessage variable, which is accessible from the .htx error page specified by the ISAPIIDQErrorFile registry entry. Each message is accompanied by a brief description of the error condition.

Table C.2. Error messages returned to the user when an Internet data query file syntax error is encountered by Index Server.

Error Message String Description of Error Condition
DBTYPE_BYREF must be used with DBTYPE_STR, DBTYPE_WSTR, DBTYPE_GUID, or DBTYPE_UI1 types on line <line> in file <file>. Indicates that DBTYPE_BYREF must always be used in conjunction with an indirect type, such as DBTYPE_STR, in the [] section of the .idq file.
Duplicate property name on line <line> in file <file>. Indicates that some property was defined more than once in the [] section of the .idq file.
Expecting an equal sign '=' on line <line> in file <file>. Indicates that an equal sign was expected but was not found, (that is, an improperly formatted entry entry was detected in the [Names] section of the .idq file).
Expecting closing parenthesis on line <line> in file <file>. Indicates that an unmatched opening parenthesis was found in the [Names] section of the .idq file.
Expecting GUID on line <line> in file <file>. Indicates that an expected globally unique identifier was not found (that is, an incorrectly formatted entry was detected in the [Names] section of the .idq file).
Expecting integer on line <line> in file <file>. Indicates that an expected integer value was not found (that is, an incorrectly formatted entry was detected in the [] section of the .idq file).
Expecting property name on line <line> in file <file>. Indicates that an expected property name was not found (that is, an incorrectly formatted entry was detected in the [] section of the .idq file.
Expecting property specifier on line <line> in file <file>. Indicates that an expected property specifier was not found (or was not specified validly) in the [] section of the .idq file. Note that a property is named either by PROPID (as an integer) or a string.
Expecting type specifier on line <line> in file <file>. Indicates that an expected type specifier was not in the [] section of the .idq file.
Invalid GUID on line <line> in file <file>. Indicates that an improperly formatted expected globally unique identifier was detected in the .idq file.
The .htx file specified could not be found in any virtual or physical path. Indicates that the output template (.htx) file that was specified by the path name in the CiTemplate parameter could not be found.
Invalid property found in the 'CiSort=' specification in file <file>. Indicates that some property that was specified in the CiSort parameter is either a non-standard property and/or is not listed in the [] section of the .idq file.
An invalid sort order was specified on the 'CiSort=' line in file <file>. Only [a] and [d] are supported. Indicates that an improper sort-order specification followed a property name in the CiSort parameter. Note that only two values are allowed: [a] (for ascending) or [d] (for descending).
Invalid property found in the 'CiColumns=' specification in file <file>. Indicates that some property that was specified in the CiColumns parameter is either a non-standard property and/or is not listed in the [] section of the .idq file.
Duplicate column, possibly by a column alias, found in the 'CiColumns=' specification in file <file>. Indicates that a property was detected more than once in the CiColumns line. Note that different friendly names for the same property are considered duplicates.
One or more output columns must be specified in the .idq file <file>. Indicates that the CiColumns parameter was either missing or found to be empty. Note that the query must specify at least one output column.
Read error in file <file>. Indicates that some type of I/O error, typically induced by a hardware failure, occurred while reading the file.
A restriction must be specified in the .idq file <file>. Indicates that the required CiRestriction parameter was either missing or empty. Note that a restriction is required for all queries. Also be aware that a very broad restriction, such as #vpath *.*, will match all pages.
A scope must be specified in the .idq file <file>. Indicates that the required CiScope parameter was either missing or empty. Note that a scope is required for all queries. Also be aware that a broad scope, such as /, will match every page.
Failed to set property in file <file>. Indicates some form of system-resource failure. This typically occurs when insufficient memory resources are available.
A template file must be specified in the .idq file <file>. Indicates that the required CiTemplate parameter was either missing or empty. Note that a template (.htx) file must be specified for all queries.
The template file cannot be found in the location specified by 'CiTemplate=' in file <file>. Indicates that the template (.htx) in the CiTemplate parameter could not be opened. Possible causes are that an invalid path was specified, the path may have specified a directory rather than a file, or the path may have been set to NULL following parameter replacement.
The catalog directory cannot be found in the location specified by 'CiCatalog=' in file <file>. Indicates that a valid content index catalog was not found in the catalog location specified by CiCatalog.
The IDQ file <file> contains a duplicate entry on line <line>. Indicates that a multiple parameter entry was detected in the [] section of the .idq file.
Expecting TRUE or FALSE in idq file <file> on line 'CiForceUseCi='. Indicates that an invalid (unexpected) value for the CiForceUseCi parameter was detected. CiForceUseCi must have a value of either TRUE or FALSE.
Expecting SHALLOW or DEEP in .idq file <file> on line 'CiFlags='. Indicates that an invalid (unexpected) value for the CiFlags parameter was detected. CiFlags must have a value of either SHALLOW or DEEP.
An invalid locale was specified on the 'CiLocale=' line in .idq file <file>. Indicates that the CiLocale parameter specified an invalid or unrecognized locale ID.
Unrecognized type on line <line> in file <file>. Indicates that an invalid data type was specified. A listing of valid data types can be found in the online documentation for Index Server.
DBTYPE_VECTOR or DBTYPE_BYREF used alone on line <i> in file <file>. Indicates that the VECTOR and BYREF property modifiers were used improperly. The property modifiers must always be used with a type, such as DBTYPE_I4, (DBTYPE_I4 | DBTYPE_VECTOR, for example)
You must specify 'MaxRecordsPerPage' in the .idq file <file>. Indicates that the required CiMaxRecordsPerPage parameter was either missing or empty. Note that all queries are required to specify the number of records per page.

Messages Due to HTML Extension File Errors

Table C.3 contains a number of error messages that are generated and returned to the user when an HTML extension (.htx) file syntax error is encountered by Index Server. In these messages, <file> indicates the name of the .htx file in question, while <line> indicates the line number where the error was detected. These messages are returned in the CiErrorMessage variable, which is accessible from the .htx error page specified by the ISAPIHTXErrorFile registry entry. Each message is accompanied by a brief description of the error condition.

Table C.3. Error messages generated and returned to the user when an HTML extension file syntax error is encountered by Index Server.

Error Message String Description of Error Condition
A <%begindetail%> section was found on line <number> in the .htx file <file>, without a matching <%enddetail%> section. Indicates a missing tag, (for example, the required matching <%enddetail%> tag for a <%begindetail%> tag was not found in the .htx file).
An <%else%> or <%endif%> was found without a matching <%endif%> <%if. . .%>. Indicates a missing tag (for example, an <%else%> or tag was found in the .htx file without the required matching <%if%> tag.
An<%enddetail%> section was found on line <number> in the .htx file <file> before the <%begindetail%> section. Indicates an improper ordering of tags, (an <%enddetail%> tag was found in the .htx file before the <%begindetail%> tag, for example).
An <%enddetail%> section was found on line <number> in the .htx file <file>, without a matching <%begindetail%> section. Indicates a missing tag, (an <%enddetail%> tag was found in the .htx file without a preceding <%begindetail%> tag, for example).
An <%if%> was found without a matching <%else%> or <%endif%>. Indicates a missing tag, (an <%if%> tag was found in the .htx file without a required matching <%else%> or <%endif%> tag.
An opening bracket "{" was found without a matching closing bracket. Indicates mismatched braces for a vector in an <%if. . .%> tag, (the closing brace is missing, for example).
An opening quote (") was found without a matching closing quote. Indicates a mismatch in a quoted phrase in an <%if. . .%> tag, (the closing quote is missing, for example).
Constants used in IsTypeEq conditions must be unsigned integers, not floats, GUIDs, and so on. Indicates a misused data type in the IsTypeEq condition. In other words, one (or more) constants in the condition is not an unsigned integer, float, GUID, and so on (asrequired).
Expecting an operator in <%if%> statement. Indicates that one of the operators (EQ, NE, LT, LE, GT, GE, contains, or IsTypeEq) did not follow <%if . . .%> as required.
One of the values in a IsTypeEq condition must be a variable. You used two constants. Indicates that one of the values specified in the IsTypeEq condition is a constant, not a variable as required.
The .htx file <file> contains an ill-formed include statement on line <number>. Indicates mismatched <% and %> for an <%include. . .%> tag; typically a missing %>.
The .htx file specified could not be found in any virtual or physical path. Indicates that an .htx file specified by an <%include. . .%> tag could not be located.
The .htx file <file> uses too many includes on line <number>. Indicates that the maximum allowable number of <%include%> statements has been exceeded. Note that up to 32 files may be included using the <%include. . .%> tag.
The include file name is invalid in file <file> on line <number>. Indicates that an invalid include file has been specified or may be caused by a <%include. . .%> tag that is missing the closing %>.

Other Miscellaneous Error Messages

Table C.4 contains messages generated and returned to the user when errors not related to query, HTML extension (.htx) file, or Internet data query file syntax errors are encountered by Index Server. When an error occurs, a message is returned in the CiErrorMessage variable. This variable is accessible from the .htx error page specified by the ISAPIDefaultErrorFile registry entry. Each message is accompanied by a brief description of the error condition.

Table C.4. Messages generated and returned to the user when errors not related to query, HTML extension file, or Internet data query file syntax errors are encountered by Index Server.

Error Message String Description of Error Condition
The query failed because the Web server is busy processing other requests. This indicates that the server is currently bogged down with queries; there are already too many queries waiting to be processed, therefore this query was rejected and may be tried by the user at a later time.

Notifying Index Server Administrators via Windows NT Event Logging


Index Server system errors and other pertinent events are reported in the Windows NT application event log under the Ci Filter Service category. System errors and events that are logged include

Table C.5 contains a complete listing of messages written to the Windows NT application event log.

Table C.5. Messages written to the Windows NT application event log.

Message Logged Description of Error Condition, Informational Message or Warning Message
CI has started on <catalog>. Indicates that Index Server has started successfully. This is an informational message.
A content scan has completed on <catalog>. Indicates the successful completion of a content scan for the specified catalog.
A full content scan has started on <catalog>. Indicates that a complete re-scan of the specified catalog has started.
An error has been detected on <catalog> that requires a full content scan. Indicates that a change notification for the specified catalog has been lost. Typical causes are a hardware failure or lack of a required system resource (usually disk space). After the problem is rectified, the full scope of the specified catalog is scanned and all documents are refiltered.
Class for extension <extension> unknown. Sample file: <file> Indicates that files with the specified extension are being filtered using the default, (text, filter). The full physical path of a representative file is included in the message. One side effect of this filtering is the addition of unnecessary data to the index. This can be circumvented by turning off filtering for this extension. This is a warning message and can be disabled by turning on a special flag in ContentIndex registry (see Appendix A, "Index Server Registry Parameters").
Cleaning up corrupted content index metadata on <catalog>. Index will be automatically restored by refiltering all documents. Indicates a catastrophic data corruption error was detected on the specified catalog. This is typically caused by a hardware failure, power failure, or an abrupt/unclean system shutdown. Note that recovery from this type of event is automatic and the catalog will be rebuilt when the hardware problem is resolved or the system rebooted (and Web Server started).
Content index on <catalog> could not be initialized. Error <number>. Indicates that an unknown and possibly catastrophic error occurred. To recover from such and occurrence, you need to delete all files under the specified catalog and then re-index all files. The error number associated with this type of failure should be reported to Microsoft product support.
Content index on <catalog> is corrupted. Please shut down and restart Web server. Indicates a catastrophic data corruption error was detected on the specified catalog. This is typically caused by a hardware failure, power failure, or an abrupt/unclean system shutdown. To recover from such an occurrence, you must shut down and restart the Web server to initiate the recovery process.
Error <number> detected in content index on <catalog>. Indicates that an unknown and possibly catastrophic error occurred. To recover from such an occurrence, you need to delete all files under the specified catalog and start over. The error number associated with this type of failure should be reported to Microsoft product support.
Master merge has been paused on <catalog>. It will be rescheduled later. Indicates that a was suspended on the specified catalog. This is a temporary event that often results from a lack of system resources (disk space or memory) to accomplish the merge. The merge be performed automatically at a later time when the required resources become available.
Master merge has completed on <catalog>. Indicates the successful completion of a on the specified catalog. This is an informational message.
Master merge cannot be started on <catalog> due to error <number>. Indicates that a master merge cannot be started on the specified catalog. The reason for this is given by the error number.
Master merge cannot be restarted on <catalog> due to error <number>. Indicates that a cannot be re-started on the specified catalog. The reason for this is given by the error number.
Master merge has restarted on <catalog>. Indicates that a previously paused has been re-started for the specified catalog.
Master merge has started on <catalog>. Indicates that a has been initiated on the specified catalog. This is an informational message.
Master merge was started on <catalog> because more than <number> documents have changed since the last master merge. Indicates that a was started for the specified catalog because the number of documents changed (since the last master merge) exceeded the maximum as specified by the registry parameter MaxFreshCount.
Master merge was started on <catalog> because the amount of remaining disk space was less than <number>%. Indicates that a was started for the specified catalog because the amount of free space on the catalog volume dropped below a minimum as specified by the parameter MinDiskFreeForceMerge in the registry. When the merge is completed, shadow indexes will be deleted and the total free disk space on the catalog drive should be increased.
Master merge was started on <catalog> because the size of the shadow indexes is more than <number>% the disk. Indicates that a was started for the specified catalog because the amount of data in exceeded the maximum as specified by the parameter MaxShadowFreeForceMerge in the registry. When the merge is completed, shadow indexes will be deleted and the total free disk space on the catalog drive should be increased.
Notifications are not enabled on <pathname> because this is a DFS aware share. This scope will be periodically scanned. Indicates that the specified pathname is a distributed file system (DFS) share, therefore if a virtual root points to this path, notifications are disabled for the entire DFS share because DFS does not support notifications.
One or more embeddings in file <file> could not be filtered. Indicates that the specified file, was filtered properly, however, embedded objects in the specified file could not be filtered; typically this is because there exists no registered filter for the embedded objects. Note that any text within such an unfiltered embedded object is not searchable. This message can be disabled by turning on a special flag in ContentIndex registry. (see Appendix A).
Recovery is starting on PropertyStore in catalog <catalog>. Indicates that corruption was detected in the and recovery has been initiated. Note that large property caches can result in long recovery times.
PropertyStore inconsistency detected in catalog <catalog>. Indicates that corruption (typically due to a hardware failure or abrupt/unclean shutdown) was detected in the and recovery will be automatically scheduled.
Recovery was performed successfully on PropertyStore in catalog <catalog>. Indicates the successful recovery following the detection of corruption in the .
<number> inconsistencies were detected in PropertyStore during recovery of catalog <catalog>. Indicates that corruption (typically due to a hardware failure or abrupt/unclean shutdown) was detected in the and recovery will be automatically scheduled.
The CI filter daemon has prematurely stopped and will be subsequently restarted. Indicates an unexpected shutdown of the filter daemon (Cidaemon.exe).Possible causes for such an occurrence are the use of poorly written filter DLLs or experimentation with the Windows NT Task Manager.
The content index could not filter file <file>. The filter operation was retried <number> times without success. Indicates that repeated filtering attempts failed for the specified document. Possible causes include a corrupted document, corrupted properties, or (very infrequently) because the document was in use for a long period of time.
The content index filter for file <file> generated content data more than <size> times the file's size. Indicates that filtering the specified document resulted in output that exceeds the maximum amount allowed. Possible causes include poorly written filter DLLs or a corrupted document.
The content index filter stopped while filtering <file>. The CI daemon was restarted. Please check the validity of the filter for objects of this class. Indicates that while filtering of the specified document started, it was not completed because the timeout period expired. Causes include poorly written filter DLLs or a corrupted document.
The filter service could not run since file <file> could not be found on your system. Indicates that an executable or DLL required for filtering cannot be found. This usually occurs because Cidaemon.exe is not on the path.
The path <pathname> is too long for content index. Indicates that no documents from the specified path will be indexed or returned. This is because the content index detected a path exceeding the maximum allowed length, as specified by MAX_PATH.
Very low disk space was detected on drive <drive>. Please free up at least <number> MB of space for content index to continue. Indicates that insufficient free disk space exists for a successful merge. As a result, merges and filtering will be postponed until disk space is freed. This is a warning message.
File change notifications are turned off for scope <scope> because of error <number>. Indicates that an error (specified by the reported error number) has prevented the re-establishment of This scope will be periodically automatic change notifications for rescanned.the specified directory scope. Index Server performs periodic (per the re-scan interval specified in the registry) to determine which documents in the scope have changed.
File change notifications for scope <scope> are not enabled because of error <number>. Indicates that an error (specified by the reported error number) has prevented the re-establishment of This scope will be periodically automatic change notifications for rescanned. the specified directory scope. This typically occurs when virtual roots point to remote shares on file servers that do not support automatic change notifications. Index Server performs periodic incremental scans (per the re-scan interval specified in the registry) to determine which documents in the scope have changed.
<Process-Name> failed to log on <UserId> because of error <number>. Indicates that the specified user could not be logged on by the specified process (Index Server SearchEngine or CiDaemon). Possible causes are either the password is wrong or the validity of the password could not be verified due to network errors. The result of this type of error is improper filtering of remote shares for which the UserId is used.

Previous Page Page Top TOC Next Page