Problem
Searches fail to contact the Search API because the EnterpriseVaultAPI application pool shuts down due to a series of tcp listener channel failures.
Error Message
In the Veritas Enterprise Vault event log the following error occurs:
Source: Enterprise Vault
Event ID: 41520
Task Category: Enterprise Vault Search
Level: Error
Computer: EV-EXCH
Description:
Unable to contact the Search API.
Reason: The message could not be dispatched because the service at the endpoint address 'net.tcp://localhost/EnterpriseVaultAPI/Search/SOAPSearch.svc' is unavailable for the protocol of the address.
V-437-41520
In the System event logs the following two errors occur when a search is attempted:
Log Name: System
Source: Microsoft-Windows-WAS
Event ID: 5002
Task Category: None
Level: Error
Computer: EV-EXCH
Description:
Application pool 'EnterpriseVaultAPI' is being automatically disabled due to a series of failures in the process(es) serving that application pool.
Log Name: System
Source: Microsoft-Windows-WAS
Event ID: 5139
Task Category: None
Level: Warning
Computer: EV-EXCH
Description:
A listener channel for protocol 'net.tcp' in worker process '3488' serving application pool 'EnterpriseVaultAPI' reported a listener channel failure. The data field contains the error number.
Lastly there is an ASP 2.0 error in the Application event logs:
Log Name: Application
Source: ASP.NET 2.0.50727.0
Event ID: 1334
Task Category: None
Level: Error
Computer: EV-EXCH
Description:
An error occurred while trying to read and instantiate the configured ProcessHandlerType.
Exception: System.ArgumentException
Message: Unknown protocol ID 'net.tcp'.
StackTrace: at System.Web.Hosting.ProcessHost.StartProcessProtocolListenerChannel(String protocolId, IListenerChannelCallback listenerChannelCallback)
Cause
The .NET Framework 2.0 can't read the net.tcp process handler type of the request being sent to it, so the EnterpriseVaultAPI application pool rejects it. This causes several listener channel errors and results in the EnterpriseVaultAPI application pool shutting down which prevents access to the Search API.
Solution
1. Open IIS and browse to the Application Pools
2. Go to the Basic Settings on the EnterpriseVaultAPI pool
3. Change the .NET CLR version from 2.0.50727 to 4.0.30319
4. Restart the Net.Tcp Port Sharing Service which will automatically restart the Net.Tcp Listener Adapter Service
5. Restart the Enterprise Vault Services
Note: If issue persists persists please validate that Authenticated Users and the Vault Service Account (VSA) have Full permissions on the Enterprise Vault installation folder. Restart the Enterprise Vault services.