I'm upgrading sitecore from 8.0 update 3 to update 7. I have already used this package while upgrading locally with no issues. when I install this package(Sitecore 8.0 rev. 160115.update) using the update installation wizard page on a QA server two strange things happen:
When it's 10% of processing it starts taking a few seconds to process each item(it's almost 7240 items to process) so this is taking hours to process a package that I already installed locally and it took a few minutes.
At some point it timeouts out. I guess the timeout one has to do with this slowness in processing so I guess the question here is how do we increase the timeout in this case?
Also the CPU on the server is not reaching 10% of usage while processing the package. Anyone know possible reasons for both cases?
UPDATE 1
Here is the log for when the installer times out (didn't find anything useful on it :|) :
ManagedPoolThread #3 01:03:13 INFO Job ended: Core_Database_Agent (units processed: )
ManagedPoolThread #16 01:03:13 INFO Job started: Master_Database_Agent
ManagedPoolThread #16 01:03:13 INFO Scheduling.DatabaseAgent started. Database: master
ManagedPoolThread #16 01:03:13 INFO Examining schedules (count: 4)
ManagedPoolThread #16 01:03:13 INFO Starting: __Task Schedule
ManagedPoolThread #16 01:03:13 INFO Ended: __Task Schedule
ManagedPoolThread #16 01:03:13 INFO Not due: Calculate Statistical Relevancy
ManagedPoolThread #16 01:03:13 INFO Not due: Rebuild Suggested Tests Index
ManagedPoolThread #16 01:03:13 INFO Not due: Try Finish Test
ManagedPoolThread #16 01:03:13 INFO Job ended: Master_Database_Agent (units processed: 4)
4328 01:06:21 ERROR Application error.
Exception: System.Web.HttpException
Message: Request timed out.
5876 01:11:20 INFO HttpModule is being initialized
4216 01:11:20 INFO HttpModule is being initialized
Heartbeat 01:13:05 INFO Health.PrivateBytes: 0
Heartbeat 01:13:05 INFO Health.CacheInstances: 117
Heartbeat 01:13:05 INFO Health.CacheTotalCount: 38,989
Heartbeat 01:13:05 INFO Health.CacheTotalSize: 90,721,502
Heartbeat 01:13:05 INFO Health.Counter(w3wp, Process\Private Byte
UPDATE 2
RAM is around 35% of usage. Also the server which is running sql server has low cpu and memory usage while the installation happens. XDB has been disabled as well
UPDATE 3
After increasing the ping as suggested by Hishaam it timed out here is the logs of when it happened:
ManagedPoolThread #13 12:38:22 INFO Job started: Sitecore.ListManagement.Analytics.UnlockContactListsAgent ManagedPoolThread #13 12:38:22 INFO Job ended: Sitecore.ListManagement.Analytics.UnlockContactListsAgent (units processed: ) 6100 12:38:28 ERROR Application error. Exception: System.Web.HttpException Message: Request timed out.
ManagedPoolThread #19 12:38:32 INFO Job started: Sitecore.ListManagement.Analytics.UnlockContactListsAgent
Complete log here
UPDATE 4
When it throws the timeout exception I noticed that right about it there is this message:
Exception details: System.Exception: History path is not set at Sitecore.Update.InstallUpdatePackage.SaveInstallationMessages() at Sitecore.Update.InstallUpdatePackage.Install() at Sitecore.Update.InstallUpdatePackage.InstallPackage(MetadataView view) at Sitecore.Update.InstallUpdatePackage.OnLoad(EventArgs e)
One interesting thing is that there is a link to download the log errors and when I hover it I see it pointing to a directory that does not exist(I'm within the server).
But if I got to the website/temp/__UpgradeHistory/Upgrade_Failutre_dateoftoday
, I see a folder with two files: 1 is the log of all items processed and the other one is a message.xml
which is empty.
Decompiling the Sitecure.Update.dll
this is what it looks like:
public string SaveInstallationMessages()
{
string installationHistoryRoot = base.InstallationHistoryRoot;
bool flag = this.EnsureHistoryPath(ref installationHistoryRoot);
string str = Path.Combine(installationHistoryRoot, "messages.xml");
FileUtil.EnsureFolder(str);
using (FileStream fileStream = File.Create(str))
{
(new XmlEntrySerializer()).Serialize(this.logMessages, fileStream);
}
if (!flag)
{
throw new Exception("History path is not set");
}
return str;
}
Anyone see this? The file gets generated but without messages. maybe it has to do with the whole problem.