Reputation: 12133
I currently have a WiX installer which is used for deploying a web application into IIS.
The application makes use of Lucene.Net and it's near-real-time search features.
Unfortunately a side-effect of this is that the Lucene indexes are held open/locked for the duration of the application running. This means if "Disable Overlapped Recycle" is set to false, then when the application pool recycles (e.g. during an upgrade) then we hit issues with lucene indexes still being locked by the previous instance.
The work-around is to change the "Disable Overlapped Recycle" to True within the advanced settings of the application pool, but I can't figure out how to do this with wix.
Is there anyway I can automate setting this value via WiX?
FYI - Here's what the WebAppPool section looks like currently in my installer project:
<iis:WebAppPool Id="AppPool" Name="Some App" ManagedRuntimeVersion="v4.0"
IdleTimeout="0" RecycleMinutes="0" ManagedPipelineMode="integrated"
Identity="networkService" />
Upvotes: 4
Views: 1237
Reputation: 55601
Occasionally you'll come across IIS metabase properties that aren't exposed by the custom actions provided by either WiX or InstallShield. In those cases it's usually easiest to call the AppCmd.exe using the Quiet Execute Custom Action.
Basically leverage the IIS extension to it's fullest and then tweak the app pool near the end of the install.
Upvotes: 3