How to avoid a farm wide reset during a solution upgrade.

1–2 minutes

Originally from

Found, then improved from

Found, then improved

Repost

the wolf swapping a worn-out part in a whole running farm without stopping it, an amber part, the raven pointing at the dial

Update xml file in manifest ( MSDN article: http://msdn.microsoft.com/en-us/library/ms412929.aspx ): 

XML
ResetWebServer="FALSE"
ResetWebServerModeOnUpgrade="Recycle"
DeploymentServerType="WebFrontEnd"

The result is the following process will NOT reset the entire farm

PowerShell
stsadm -o retractsolution -name %SolutionName% -url <Site Url> –immediate

stsadm -o upgradesolution -name %SolutionName% -allowGacDeployment -filename %SolutionName%

stsadm -o deploysolution -name %SolutionName% -immediate -url <Site Url> –allowGacDeployment