SourceOne Email Management: O WebSearch pode não retornar um conjunto completo de resultados de pesquisa

Summary: O WebSearch pode não retornar um conjunto completo de resultados de pesquisa.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms


Durante uma pesquisa de índice de texto completo, todos os resultados podem não ser confirmados no banco de dados SourceOne Search. Consequentemente, os resultados da pesquisa podem estar incompletos.
Esse problema pode não afetar todas as pesquisas. A ocorrência desse problema dependerá da existência de mensagens duplicadas no Índice de Texto Completo e da ordem em que esses resultados são retornados. É mais provável que esse problema ocorra em sistemas onde:

  • Existem itens duplicados no índice de texto completo
  • A opção MaxSearchHitsThreads foi ativada
  • Existem arquivos de migração no local em que os dados de vários servidores EmailXtender foram migrados para uma única pasta mapeada do SourceOne.   

Cause

Ao executar uma pesquisa na Web do SourceOne, o processo de pesquisa procurará correspondências para os critérios de pesquisa, ou acessos, no índice.  Quando o número de acessos atingir 5.000 ou a pesquisa for concluída, os resultados serão lançados no banco de dados SQL do SourceOne Search por meio de uma transação SQL.  Se a transação contiver uma entrada duplicada, a mesma mensagem da mesma pasta mapeada, de um hit já publicado pela mesma transação ou anterior para a mesma pesquisa, um erro de violação de chave primária será retornado e a transação será revertida.  Os acessos contidos na transação revertida não serão adicionados ao conjunto de resultados da pesquisa.

Resolution

A Dell EMC recomenda que os clientes apliquem um dos seguintes patches de gerenciamento de e-mail do SourceOne para a versão 7.2 instalada:

7.2 SP6 HF4 (7.2.6.6229)
7.2 SP7 ou superior

Os downloads estão disponíveis na página SourceOne Email Management Product em: http://support.emc.com

Depois que uma versão do SourceOne Email Management com a correção for instalada, todas as pesquisas futuras deverão ser concluídas com todos os resultados.  Todas as pesquisas realizadas durante a execução de uma versão afetada precisarão ser executadas novamente para garantir a integridade dos resultados.

No SourceOne Email Management versão 7.2.8, talvez seja possível identificar quais conjuntos de índice têm conteúdo duplicado ou "Itens extras" por meio da validação de índice. Esses resultados de validação podem ser usados para identificar quais pesquisas precisam ser executadas novamente. Execute as seguintes etapas:  

Primeiro, configure a verificação de validação de índice usando o Modo 2 ou superior. A validação de índice sinalizará conjuntos de índices de problemas com um ponto de exclamação amarelo (!) e o status do índice será "Itens extras".  Se as verificações tiverem sido executadas em uma versão anterior, uma nova varredura poderá ser executada no console de gerenciamento de e-mail do SourceOne clicando com o botão direito do mouse em cada pasta YYYYMM e selecionando "Rescan".  Após a conclusão das varreduras, todos os índices com um estado de "Itens extras" devem ser reconstruídos com êxito antes que quaisquer pesquisas na Web do SourceOne afetadas sejam executadas novamente.

As próximas etapas são identificar possíveis pesquisas na Web do SourceOne que foram executadas anteriormente e que teriam sido potencialmente pesquisadas em um conjunto de índices de problemas.

NOTA: As consultas SQL abaixo pressupõem que o nome dos bancos de dados SourceOne são padrão. Se não estiverem, a consulta precisará ser modificada com o nome correto dos nomes de banco de dados do SourceOne.

Primeiro, para identificar quaisquer pesquisas na Web anteriores do SourceOne que foram executadas anteriormente durante o período desse problema, execute as seguintes consultas SQL:

1. Execute a seguinte consulta para capturar a data de instalação e as datas de upgrade do ambiente SourceOne:

use ES1Archive
select EndTime into #TEMP from [DBMaintenanceHistory] where (version >=7 and version <7.27000) and Description = 'SourceOne Archive database update complete'
insert into #TEMP select EndTime from [DBMaintenanceHistory] where Description = 'New SourceOne Native Archive database created' and Version >=7 and Version < 7.27000
GO


2. Execute a seguinte consulta para reunir todas as informações para as pesquisas na Web do SourceOne que foram executadas com base nas datas recuperadas na Etapa 1:
 

use ES1Activity;
with cte as(
select ActivityID as activityid,TaskTypeID,Name as SearchName,search.value('(@searchOperation)[1]','varchar(max)') as operation, search.value('(.)[1]','varchar(max)') as daterange,
xConfig.value('(/SearchJobConfig/QueryString/SearchCriteria/@displayName)[1]','nvarchar(max)') as SearchUser from Activity
cross apply xConfig.nodes('/SearchJobConfig/QueryString/SearchCriteria/ExpressionSet/SimpleAttributeExpression') as ref(search)
where xConfig is not null --and --TaskTypeID = 8
and search.value('(@displayName)[1]','varchar(max)') = 'Date')
select activityid,TaskTypeID,SearchUser,SearchName, 'StartDate' = Replace(CASE 
WHEN min(daterange) = max(daterange) THEN 'ALL'
ELSE min(daterange) END,'T',' '), 'EndDate' = Replace(CASE
WHEN min(daterange) = max(daterange) THEN 'ALL'
ELSE max(daterange) END,'T',' ') into #SearchDates from cte
group by activityid,TaskTypeID,SearchUser,SearchName


3. Execute a consulta a seguir para gerar todas as informações sobre as pesquisas possivelmente afetadas. A saída incluirá as informações básicas sobre a pesquisa na Web do SourceOne, incluindo: 
 

Nome da pesquisa: O nome da pesquisa como aparece na janela SourceOne Email Management Console\Operations\Job Management.
JobID: O valor de JobID encontrado nas janelas Job Management do SourceOne Email Management Console.
Hora de início: Data/hora em que a pesquisa foi executada.
Data de início\término da pesquisa: Os critérios de data usados na pesquisa. Se nenhum campo Date foi usado na pesquisa, TODAS as datas foram pesquisadas.
Usuário em execução: O usuário que criou e executou a pesquisa.
use ES1Activity
select distinct A.Name as SearchName,J.JobID,A.StartTime,S.StartDate as [Search Start Date], 
S.EndDate as [Search End Date], S.SearchUser as [Executing User] from Activity A
join Tasks T on A.ActivityID = T.ActivityID
join Jobs J on T.TaskID = J.TaskID
join #SearchDates S on (S.ActivityID = A.ActivityID)
where A.TaskTypeID =8 and A.StartTime > (select min(EndTime) from #TEMP) and A.StartTime < (select max(EndTime)from #TEMP)
order by A.StartTime
GO
drop table #TEMP
drop table #SearchDates
GO


Nota: Somente prossiga com as etapas a seguir depois que a validação do índice for concluída.

Em seguida, para identificar conjuntos de índice do SourceOne problemáticos e seus estados, execute as seguintes consultas SQL:


1. Execute a seguinte consulta para capturar a data de instalação e as datas de upgrade do ambiente SourceOne:

use ES1Archive
select EndTime into #TEMP from [DBMaintenanceHistory] where (version >=7 and version <7.27000) and Description = 'SourceOne Archive database update complete'
insert into #TEMP select EndTime from [DBMaintenanceHistory] where Description = 'New SourceOne Native Archive database created' and Version >=7 and Version < 7.27000
GO


2. Execute a seguinte consulta para capturar quaisquer índices do SourceOne que foram, a qualquer momento, marcados como "Itens extras":

use ES1Archive
select WorkID,CmdType,cast(CmdParam as XML).value('(/WQ_Parms/WQ_FolderId/node()) [1]', 'bigint') as FolderID,cast(CmdParam as XML).value('(/WQ_Parms/WQ_FldrPath/node()) [1]', 'nvarchar(max)') as [Archive_Index Path],LastModified as ScanDate, SUBSTRING(ResultStr,(CHARINDEX( 'indexflags(', ResultStr, 0)+11),(CHARINDEX( ')', ResultStr, (CHARINDEX( 'indexflags(', ResultStr, 0)+11) )-(CHARINDEX( 'indexflags(', ResultStr, 0)+11))) as ResultStr,'Result' = CAST('Extra Items' as varchar(50))
into #ExtraItems 
from WorkQueue 
where CmdType =17 and (CHARINDEX( 'indexflags(', ResultStr, 0) > 0 and (CAST(SUBSTRING(ResultStr,(CHARINDEX( 'indexflags(', ResultStr, 0)+11),(CHARINDEX( ')', ResultStr, (CHARINDEX( 'indexflags(', ResultStr, 0)+11) )-(CHARINDEX( 'indexflags(', ResultStr, 0)+11))) as bigint) & CAST( 65536 as bigint) ) > 0)
GO

3. Execute a seguinte consulta para capturar quaisquer índices do SourceOne que foram recriados durante o período do problema: 

use ES1Archive
select WorkID,CmdType,cast(replace(replace(CmdParam,'<WQ_Parms><WQ_FldrPath>',''),'</WQ_FldrPath></WQ_Parms>','') as nvarchar(max)) as [Archive_Index Path], min(LastModified) as [Rebuild Date], 'Result' = CASE WHEN CmdType=1 THEN 'Rebuilt' ELSE 'Unknown' END into #Rebuilt 
from WorkQueue (nolock) 
where CmdType = 1 and (LastModified >= (select min(EndTime) from #TEMP) and LastModified < (select max(EndTime) from #TEMP))
group by WorkID,CmdParam,CmdType order by CmdParam,CmdType
GO
update #Rebuilt set [Archive_Index Path] = replace([Archive_Index Path],char(13),'')
update #Rebuilt set [Archive_Index Path] = replace([Archive_Index Path],char(10),'')
GO
set IDENTITY_Insert #ExtraItems ON
insert into #ExtraItems (WorkID,CmdType,[Archive_Index Path],ScanDate,Result)
select * from #Rebuilt where NOT EXISTS(select * from #ExtraItems where #ExtraItems.[Archive_Index Path] = #Rebuilt.[Archive_Index Path])
GO

 

4. Execute a seguinte consulta para capturar todos os índices do SourceOne que foram A validação falhou ou foi perdida durante o processo de validação de índice após a atualização para o SourceOne 7.2 SP8:

use ES1Archive
select replace(FP.path,'\FPROOT\','') + CASE
WHEN LEN(FT.IndexNum) = 1 THEN ('00' + CAST(FT.IndexNum AS VarChar(20)))
WHEN LEN(FT.IndexNum) = 2 THEN ('0' + CAST(FT.IndexNum AS varchar(20)))
WHEN LEN(FT.IndexNum) = 3 THEN CAST(FT.IndexNum AS varchar(20)) END as [Archive_Index Path] into #IndexList
 from FTIndex FT 
join FolderPlan FP on FT.FolderNodeID = FP.FolderID
EXCEPT
select replace(FP.path,'\FPROOT\','') + CASE
WHEN LEN(FT.IndexNum) = 1 THEN ('00' + CAST(FT.IndexNum AS VarChar(20)))
WHEN LEN(FT.IndexNum) = 2 THEN ('0' + CAST(FT.IndexNum AS varchar(20)))
WHEN LEN(FT.IndexNum) = 3 THEN CAST(FT.IndexNum AS varchar(20)) END as [Archive_Index Path] 
 from FTIndex FT 
join FolderPlan FP on FT.FolderNodeID = FP.FolderID
where (FT.LastScanDate > (select Max(Date) from DBMaintenanceHistory where Description = 'SourceOne Archive database update complete'  and Version > 7.27))
GO
set IDENTITY_Insert #ExtraItems ON
insert into #ExtraItems (WorkID,CmdType,[Archive_Index Path],Result) 
select '0','17',[Archive_Index Path],'Result'='Not-Validated' from #IndexList 
WHERE NOT EXISTS (select * from #ExtraItems where #ExtraItems.[Archive_Index Path] = #IndexList.[Archive_Index Path])
GO

5. A execução dessa consulta final gerará todos os índices do SourceOne potencialmente afetados. Quaisquer pesquisas executadas em relação a índices marcados como "Itens extras" precisariam ser executadas novamente para obter os resultados corretos. Quaisquer pesquisas executadas em índices que foram "Reconstruídos" poderiam potencialmente precisar ser executadas novamente porque uma recriação de um índice teria resolvido, mas depende de quando a pesquisa foi executada no conjunto de índices reconstruídos.

select WorkID,[Archive_Index Path],ScanDate as Date,Result from #ExtraItems where Result !='Validated'
GO
drop table #TEMP
drop table #Rebuilt
drop table #ExtraItems
drop table #IndexList
GO

Additional Information

Este conteúdo está traduzido para outros idiomas: 
https://downloads.dell.com/TranslatedPDF/PT-BR_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/ZH-CN_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/ES_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/DE_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/FR_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/IT_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/JA_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/NL_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/KO_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/RU_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/PT_KB535700.pdf
https://downloads.dell.com/TranslatedPDF/SV_KB535700.pdf

Affected Products

SourceOne Email Management

Products

SourceOne, SourceOne Email Management
Article Properties
Article Number: 000055328
Article Type: Solution
Last Modified: 27 Jun 2025
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.