Enterprise Vault (EV) Metadata Build Task fails

book

Article ID: 100032355

calendar_today

Updated On:

Description

Error Message

The Metadata Build task report gives the following error:

The metadata store build subtask has encountered an error: [Failed to fetch batch from volume [VaultEntryId=[150BBDCDCB9C56948A4BEB4C1E04E34BC1110000VAULTALIAS] IndexVolumeIdentity=[87004] StartISN=[1] EndISN=[11] Offline=[False] Failed=[False] MissingItems=[0] Type=[64Bit] Number Of Ranges=[1]].

Resolution of the dependency failed, type = "Symantec.EnterpriseVault.Indexing.Search.SOAPSearchClient", name = "".
Exception message is: The current build operation (build key Build Key[Symantec.EnterpriseVault.Indexing.Search.SOAPSearchClient, null]) failed: The parameter searchClient could not be resolved when attempting to call constructor Symantec.EnterpriseVault.Indexing.Search.SOAPSearchClient(Symantec.EnterpriseVault.Indexing.Search.SourceDirectory sourceDirectory, Symantec.EnterpriseVault.Indexing.Search.SearchClient searchClient, Symantec.EnterpriseVault.Indexing.Search.SOAPSearchHelpers soapSearchHelpers, Symantec.EnterpriseVault.Indexing.Search.SoapSearchCommon soapSearchCommon, Symantec.EnterpriseVault.Indexing.Search.AuthTokenScopeFactory authTokenScopeFactory). (Strategy type BuildPlanStrategy, index 3)].

DTRACE of W3WP process shows the following extra information:

{SOAPSearchService} Innermost exception from previous error: System.UnauthorizedAccessException: Access to the temp directory is denied.  Identity 'IIS APPPOOL\EnterpriseVaultAPI' under which XmlSerializer is running does not have sufficient permission to access the temp directory.  CodeDom will use the user account the process is using to do the compilation, so if the user doesnt have access to system temp directory, you will not be able to compile.  Use Path.GetTempPath() API to find out the temp directory location.|   at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence)|   at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies)|   at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence evidence)|   at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace)|   at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)|   at Symantec.EnterpriseVault.Indexing.Common.IndexFields..cctor()
2155    11:02:29.478     [14140]    (w3wp)    <36688>    EV-H    {SearchExceptionToFaultMapper} Mapped ResolutionFailedException exception to SOAP fault: FaultException

 

Cause

This issue is caused by the lack of permissions for the IIS Application pool Identity EnterpriseVaultAPI on the system TMP environmental variable. This is, by default, the Windows\Temp directory.

 

Resolution

To resolve the issue ensure that the IIS APPPool\EnterpriseVaultAPI user has full access to the %TMP% location on the Enterprise Vault server. Once the permission has been added the server requires a reboot.

Secondly ensure that the temp locations have been excluded from anti virus scans as documented in the related article.

Issue/Introduction

When enabling an archive for Metadata Store the build task fails. Performing a search against the archive also fails.