Aug 122020
 

There has been some recent change to the LTSR article around Local Host Cache upgrades

https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/upgrade-migrate/upgrade.html#replace-sql-server-express-localdb

  • When upgrading Delivery Controllers to Citrix Virtual Apps and Desktops version 1912 or 2003: Upgrading SQL Server Express LocalDB is optional. Local Host Cache works properly, with no loss of functionality, regardless of whether you upgrade SQL Server Express LocalDB. We added the option to move to a newer version of SQL Server Express LocalDB in case there are concerns about end of support from Microsoft for SQL Server Express LocalDB 2014.
  • When upgrading Delivery Controllers to Citrix Virtual Apps and Desktops versions newer than 2003: The minimum supported version is SQL Server Express 2017 LocalDB Cumulative Update (CU) 16. If you originally installed a Delivery Controller earlier than version 1912, and have not replaced SQL Server Express LocalDB with a newer version since then, you must replace that database software now. Otherwise, Local Host Cache will not work.

As you can see here, at one time it stated you needed to upgrade, or it would not work. However, it doesn’t seem that it 100% anymore. I think that’s why Citrix updated the doc. 

As can see here some had the same concerns or questions around it. I most certainly did. 

  1. So, let’s get started. I always do a snapshot first. Which is completed. 
  1. Complete the upgrade of your Citrix Virtual Apps and Desktops components, databases, and site. (Those database upgrades affect the site, monitoring, and configuration logging databases. They do not affect the Local Host Cache database that uses SQL Server Express LocalDB.)
  1. As you can see, I am on 1912 CU1 and have MSQL Express 2014
  1. On the Delivery Controller, download PsExec from Microsoft. See the Microsoft document PsExec v2.2.
  1. Stop the Citrix High Availability Service
  1. Open CMD as Admin and open PsExec.exe

psexec -i -u “NT AUTHORITY\NETWORK SERVICE” cm

  1. Move to the folder containing SqlLocalDB.

cd “C:\Program Files\Microsoft SQL Server\120\Tools\Binn”

  1. Stop and delete CitrixHA (LocalDB).

If you don’t stop is you will get this error  ( Me not paying attention)

SqlLocalDB stop CitrixHA

SqlLocalDB delete CitrixHA

  1. Remove the related files in C:\Windows\ServiceProfiles\NetworkService
  1. Uninstall SQL Server Express LocalDB 2014 from the server, using the Windows feature for removing programs
  1. Install SQL Server Express LocalDB 2017. In the Support > SQLLocalDB folder on the Citrix Virtual Apps and Desktops installation media, double-click sqllocaldb.msi
  1. Reboot the server and make sure this is started “Citrix High Availability Service”.
  1. Logged on and it took about 15 seconds to show up
  1. Then 60 seconds or so on this

11. Check if the CitrixHA Db is created.

 CitrixHA is re-created the next time a configuration sync occurs. After a minute or two, use the SqlLocalDB utility to confirm that CitrixHA has been re-created.

SqlLocalDB i

CitrixHA

MSSQLLocalDB

Exmaple

While still in the PsExec session run this

C:\Program Files\Microsoft SQL Server\120\Tools\Binn>SqlLocalDB i

CitrixHA

MSSQLLocalDB

  1. You will see this until you do the second broker
  1. After I did my second Broker this was in the logs
  1. But then I see this almost ever 2 minutes. I remember reading about this. But I thought it was fixed many versions ago. 

Did some google on the Errors and came up with the 2 links below.

https://support.citrix.com/article/CTX230775

https://blog.citrix24.com/xendesktop-7-15-local-host-cache-troubleshooting/

  1. LHC DB upgrade reference

https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/upgrade-migrate/upgrade.html#replace-sql-server-express-localdb

  1. Turns out some AD account were deleted over time, and it had some bad SIDs.
  2. So, I ran the quick script, to get the output.

Get-BrokerApplication |foreach {if ($_.AssociatedUserNames -match “S-1-5-21”) {$_.Name; $_.AssociatedUserNames -match “S-1-5-21”; “”}}

  1. Went into Studio and deleted them from the location it displayed above. Which was in a Published application visibility.
  1. Then based on CTX230775 had needed to redo the LHC DB. So quickly ran through the process and it fixed the error. 

So, in summary, this is how I upgraded the LHC DB and some minor troubleshooting. Hope it helps someone

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)

This site uses Akismet to reduce spam. Learn how your comment data is processed.