Как полностью удалить триммер безопасности поиска (ISecurityTrimmer2)

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/81034

  •  10-12-2019
  •  | 
  •  

Вопрос

Я создал очень простую реализацию ISecurityTrimmer2 в SharePoint 2010.Зарегистрировал, все заработало как положено.

Я удалил его, используя следующий PowerShell:

$searchApp = Get-SPEnterpriseSearchServiceApplication "Search Service Application"
$trimmer = $searchApp | Get-SPEnterpriseSearchSecurityTrimmer
$trimmer | Remove-SPEnterpriseSearchSecurityTrimmer -SearchApplication "Search Service Application"

Powershell предупреждает меня, что игнорирует дополнительный параметр -SearchApplication, но без него команда не работает.Я проверил, что Get-SPEnterpriseSecurityTrimmer не возвращает результатов.

Теперь я не получаю результатов поиска со следующей ошибкой в ​​ULS от процессора запросов:

Error occurred when executing pluggable security trimmer with Id 1 System.InvalidOperationException: Could not find Pluggable Security Trimmer with Id '1'.    
 at Microsoft.Office.Server.Search.Administration.Security.PluggableSecurityTrimmerManager.Instantiate(Int32 idRequested)    
 at Microsoft.Office.Server.Search.Administration.Security.PluggableSecurityTrimmerManager.GetPluggableSecurityTrimmer(Int32 id)    
 at Microsoft.Office.Server.Search.Query.PluggableSecurityTrimmer.Trim(UInt32[] docIds, Boolean[] displayDoc, UInt32 oldScannedCount, UInt32 logicalStartPosition, UInt32 desiredResultCount)

я сделал iisreset и все равно получаю ту же ошибку.Очевидно, что его там нет, но почему процессор запросов все еще его ищет и как я могу полностью его удалить?

Это было полезно?

Решение

Видимо, это исправляет новое полное сканирование.

Я нашел объяснение в комментариях. в этой статье о почтовых триммерах 2013 г. Свейнар Расмуссен

Причиной первоначального полного ползания является то, что объекты контента (документы) должны быть связаны с зарегистрированным триммером.Он поместит целый ряд идентификатор на тех, кто соответствует правилу ползания.После того, как контент «помечен» с помощью пост-триммера, постриммер вызывает.И любые последующие изменения в логике триммера не потребуют каких-либо ползаний после этого, если вы не перерегистрируете триммеры.

По моему опыту, если вы хотите сделать что-то, предполагающее изменение строгого имени триммера безопасности (например,изменив версию сборки), вы можете удалить его и повторно добавить с тем же идентификатором, не требуя полного сканирования.Только в 2013 году для этого также потребуется перезапустить службу Search Host Controller.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top