In VMware vCenter Server Appliance (VCSA) 8.0 Update 3, accessing or operating the vSphere Client user interface (vSphere UI) results in the browser freezing on a dark screen with an infinite loading spinner after 1 to 2 hours of continuous operation. Restarting the vsphere-ui service temporarily restores access, but the UI freezing reoccurs periodically.
The following error messages are recorded in /var/log/vmware/vsphere-ui/logs/vsphere_client_virgo.log or /var/log/vmware/apig/apigw.log:
com.vmware.vcenter.apigw.exception.ServiceClosedException: AsyncTokenProvider has been closed
com.vmware.vise.util.session.SessionUtil: Tried to associate a session to an invalid clientId. (sessionId <REDACTED_SESSION_ID>, clientId null...)
com.vmware.vise.security.SessionManagementFilter: Unauthenticated request for URI: /ui/error.jsp with client id: null java.lang.IllegalArgumentException: Invalid clientId
Keywords: vSphere Client, vSphere UI, AsyncTokenProvider has been closed, Invalid clientId, ServiceClosedException, Tomcat session facade recycling, VCSA.
vCenter 8.0U3g
Apache Tomcat session facade recycling prematurely terminates active API Gateway token provider contexts (AsyncTokenProvider has been closed), invalidating client session mappings (Invalid clientId) and causing the vSphere Client UI to freeze.
Establish an SSH connection to the vCenter Server Appliance (VCSA) as root.
Back up the existing Tomcat properties configuration file:
cp /usr/lib/vmware-vsphere-ui/server/conf/catalina.properties /root/catalina.properties.bak
Append the facade recycling override property to catalina.properties:
echo "org.apache.catalina.connector.RECYCLE_FACADES=false" >> /usr/lib/vmware-vsphere-ui/server/conf/catalina.properties
Stop the vsphere-ui service:
service-control --stop vsphere-ui
Purge the Serenity database runtime cache and Virgo server work cache:
rm -rf /storage/vsphere-ui/SerenityDB/serenity/*
rm -rf /usr/lib/vmware-vsphere-ui/server/work/*
Start the vsphere-ui service:
service-control --start vsphere-ui
Clear browser cookies and web cache, or open a new Incognito browser window before logging back into the vSphere Client.