Lo stato dell'indice di contenuto rimane bloccato durante la ricerca per indicizzazione in un database Exchange Server 2010

Numero KB originale: 2820817

Sintomi

In un database Microsoft Exchange Server 2010, lo stato dell'indice di contenuto viene visualizzato come "ricerca per indicizzazione" e non sembra raggiungere mai lo stato "integro". Inoltre, anche se il contatore delle prestazioni Numero di documenti indicizzati correttamente mostra un aumento progressivo del numero di documenti indicizzati, il valore nel contatore Numero di cassette postali da sinistra a ricerca per indicizzazione non diminuisce come previsto.

In questo caso, nel log dell'applicazione vengono registrati gli eventi seguenti:

Time:
ID: 102
Level: Error
Source: MSExchange Search Indexer
Machine: Mailboxserver.contoso.com
Message: Exchange Search Indexer has failed to crawl the mailbox (8832ee80-47b8-4b0e-a98f-c4a239794707) in database (Database1) due to error: (Microsoft.Exchange.Search.MailboxCrawlFailedException: Failed to logon to mailbox). This mailbox will be retried later.
Time:
ID: 5617
Level: Error
Source: CI Troubleshooter
Machine: Mailboxserver.contoso.com
Message: CI troubleshooter exchange search service restart attempt 81.

Causa

Questo problema si verifica quando System Center Operations Manager esegue lo script Toubleshoot-CI.ps1. In questo modo, il servizio di ricerca di Exchange viene riavviato prima di completare il processo di indicizzazione.

Risoluzione

Per risolvere questo problema, impedire al server System Center Operations Manager di eseguire lo script Troubleshoot-CI.ps1 come indicato di seguito:

  1. Aprire System Center Operations Manager.
  2. Fare clic suMonitoraggiooggetti> Management Pack.
  3. Nella casella Cerca digitare troubleshoot (Risoluzione dei problemi) e quindi fare clic su Find Now (Trova ora).
  4. Individuare l'elemento che corrisponde a Troubleshoot-CI.ps1 script, fare clic con il pulsante destro del mouse su di esso e quindi scegliere Proprietà.
  5. Nella scheda Override fare clic su Sostituisci.
  6. Selezionare la casella di controllo Abilitato , impostare l'opzione Ignora valoresu False e quindi fare clic su OK.

Ulteriori informazioni

In genere, System Center Operations Manager esegue lo script Troubleshoot-CI.ps1 ogni due ore. Tuttavia, se lo script Troubleshoot-CI.ps1 rileva uno dei sintomi seguenti, viene attivato un riavvio del servizio di ricerca di Exchange:

  • Deadlock: deadlock di Ricerca di Exchange durante l'attesa sui thread da MSSearch.
  • Danneggiamento: uno o più indici di ricerca sono danneggiati.
  • Stall: simile a un deadlock in quanto gli indici non vengono aggiornati.
  • Backlog: il catalogo di ricerca è backlogged, quindi le ricerche pianificate sugli indici non vengono eseguite come previsto.

Di seguito è riportato un esempio di evento registrato quando viene eseguito lo script Troubleshoot-CI.ps1:

Time:
ID: 5611
Level: Error
Source: CI Troubleshooter
Machine: Mailboxserver.contoso.com
Message: Indexing backlog reached a critical limit of 48 hours or the number of items in the retry queue is greater than 10000 for one or more databases: Database1 (0, 12572, 0)Database1 (0, 31859, 0)

Se i database dispongono di cassette postali o cassette postali di grandi dimensioni con un numero elevato di elementi, in genere sono necessarie più di due ore per completare il processo di indicizzazione. Quando il servizio di ricerca di Exchange viene riavviato, le cassette postali vengono reinsertte nell'elenco per la reindicizzazione. In questa situazione, il processo di ricerca per indicizzazione potrebbe non avere mai la possibilità di completare.