The information in this article applies to:
SYMPTOMS
The Microsoft Exchange information store database may experience one of
the following symptoms during normal operation:
If you run the consistency checker (ESEUTIL /G db /V /X piped to a text file), it reports ERROR: corrupted LV(number) (lid changed without root), and/or ERROR: orphaned LV(lid, size, refcount). An orphaned LV is a non-corrupting error. NOTE: If ONLY orphaned LVs are reported by ESEUTIL /G db /V /X, and NO corrupted LVs are reported, you can remove the errors by applying the fix in the "Resolution" section, then performing an offline defragmentation of the database (ESEUTIL /D db). The rest of this article assumes that corrupted LVs are reported by SEUTIL /G db /V /X. In 5.5 SP1, ESEUTIL /G /V /X may stop with the following JET Error -1206 (JET_errDatabaseCorrupted). With Diagnostic Logging turned up to general on the Information Store you may receive the following Application Event Log: During normal operation, you may get a -1069 error (JET_errVersionStoreOutOfMemory) in the application log. The information store service (Store.exe) may access violate during normal operation when it encounters corrupt data. The information store process is using 100 percent of the CPU time all consumed by one thread (there are occasions when up to three threads are affected). You can view this by following these steps:
CAUSEWhen the Exchange database engine inserts a record into the binary tree (b-tree), it may find a record with the same primary key that is marked for deletion. Because the node is just marked for deletion and has not been physically deleted yet, the Exchange database engine "undeletes" the node and changes its data to that of the new record. Because the Exchange database engine is changing the data associated with the record, the Exchange database engine may be changing the record's size. If the record becomes too big for the page, the Exchange database engine has to perform a b-tree split. During the split, the Exchange database engine must release the latch on the pages in the tree and then re-latch them when the split is completed. In rare circumstances where the information store cleanup thread comes along in the small delta where the pages were unlatched, the information store cleanup thread may remove the page marked for deletion. When the Exchange database engine tries to re-latch the pages, it does not know the record has been removed. As a result, the information store either stops responding (uses 100 percent processor time in one or more threads) or corrupts the data. RESOLUTION
Apply the fix described below. The Exchange database engine has been fixed to
detect whether the page has been removed and to take appropriate action if
it has.
STATUSMicrosoft has confirmed this to be a problem in Microsoft Exchange Server version 5.5. This problem has been corrected in the latest U.S. Service Pack for Microsoft Exchange Server version 5.5. For information on obtaining the Service Pack, query on the following word in the Microsoft Knowledge Base (without the spaces): S E R V P A C K This fix is currently available at the following location: ftp://ftp.microsoft.com/bussys/exchange/exchange-public/fixes/Eng/Exchg5.5/PostRTM/ESE-FIX/ MORE INFORMATION
High CPU use or a stoppage of the information store occurs if
there are exactly two nodes on the page being split. This is because the
Exchange database engine tries to split one record on a page, which is not
possible.
Additional query words: ese!JetGetTableColumnInfo kbfaq exfaq
Keywords : kbusage XADM exc55 |
Last Reviewed: February 3, 2000 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |