Occasional VS crash on Get Latest Version

This forum is now locked, since Gold Support is no longer offered.

Moderator: SourceGear

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Occasional VS crash on Get Latest Version

Post by tomt84 » Tue Jul 11, 2006 9:22 am

This *may* turn out to be unrelated to Vault directly, or not your fault, but we have developed an occasional problem where VS2005 "disappears" very suddenly and with no reported error. This happens when right clicking the project or solution and getting the latest version.

This has started happening on both of our development workstations - there are no other obvious changes infrastructure wise. Maybe it's something we've checked in to Vault?

Is there a crash log file anywhere where we can get some more info?

I've updated my Vault client from 3.1.8 to 3.1.9 to see if that solves the issue. It's only occasional, maybe once per machine per day, but kind of annoying when it does happen as unsaved changes can be lost this way.
Tom Fanning

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Tue Jul 11, 2006 9:34 am

Some places to look:

-- Windows Event Viewer on the client machine
--Enable IDE logging on the client machine and see if anything useful is captured in the log:
http://support.sourcegear.com/viewtopic.php?t=2898

--Enable debug logging for the Vault Server (Admin Tool->Server Options->Logging) to see if errors are reported on the server side. The log is in %windir%\temp\sgvault on the server machine.
Linda Bauer
SourceGear
Technical Support Manager

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Tue Jul 11, 2006 2:04 pm

Thanks Linda. I'll post back here with any info I find.
Tom Fanning

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Wed Jul 12, 2006 6:38 am

Just captured a crash on a Get Latest in VS.

Windows event log:
Event Type: Error
Event Source: .NET Runtime
Event Category: None
Event ID: 1023
Date: 12/07/2006
Time: 13:32:30
User: N/A
Computer: EDGEBYTE-TFLAPT
Description:
.NET Runtime version 2.0.50727.42 - Fatal Execution Engine Error (7A2B45A2) (0)


Event Type: Error
Event Source: ASP.NET 2.0.50727.0
Event Category: None
Event ID: 1000
Date: 12/07/2006
Time: 13:32:37
User: N/A
Computer: EDGEBYTE-TFLAPT
Description:
aspnet_wp.exe (PID: 2400) stopped unexpectedly.
Log from unmanaged side of client:

Code: Select all

07/12/06 13:32:27 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2.sln
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2.sln
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\LawbyteDotNet_2_2.csproj
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\LawbyteDotNet_2_2.csproj
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjectSandbox\LawbyteObjectSandbox.csproj
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjectSandbox\LawbyteObjectSandbox.csproj
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjects\LawbyteObjects.csproj
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjects\LawbyteObjects.csproj
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2.vssscc
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2.vssscc
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\Obsolete Pages\NominalMaintenance.aspx.cs
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\Obsolete Pages\NominalMaintenance.aspx.cs
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\Obsolete Pages\TableMaintenance.aspx.cs
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\Obsolete Pages\TableMaintenance.aspx.cs
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\LawbyteDotNet_2_2.csproj.vspscc
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteDotNet_2_2\LawbyteDotNet_2_2.csproj.vspscc
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjectSandbox\LawbyteObjectSandbox.csproj.vspscc
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjectSandbox\LawbyteObjectSandbox.csproj.vspscc
07/12/06 13:32:28 | Enter SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjects\LawbyteObjects.csproj.vspscc
07/12/06 13:32:28 | Exit SccDiff(), pContext=99688560, lpFileName=C:\Documents and Settings\tf.EDGEBYTE\My Documents\Visual Studio 2005\Projects\LawbyteDotNet\LawbyteObjects\LawbyteObjects.csproj.vspscc
This appears to be happening more frequently, and on most, if not all, "Get Latest" operations in VS, on two different workstations.

I updated both clients and the server to the latest build this morning. Same behaviour.

Thanks
Tom
Tom Fanning

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Wed Jul 12, 2006 6:41 am

Nothing in the server event log, incidently.

Nothing in the server vault log, only the usual:

Code: Select all

----12/07/2006 10:04:23      tf--sbs-server.Edgebyte.local(192.168.16.2)--SSL Disabled	Login 
----12/07/2006 10:04:26      tf--edgebyte-tflaptop.edgebyte.local(192.168.16.15)--SSL Disabled	Login 
----12/07/2006 10:08:13      tf--edgebyte-tflaptop.edgebyte.local(192.168.16.15)--SSL Disabled	Logout 
----12/07/2006 10:14:40      tf--edgebyte-tflaptop.edgebyte.local(192.168.16.15)--SSL Disabled	Login 
----12/07/2006 10:15:28      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 10:15:42      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Logout 
----12/07/2006 10:48:49      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 11:39:36      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 12:12:59      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 12:18:33      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Logout 
----12/07/2006 12:19:27      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 12:20:33      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Logout 
----12/07/2006 12:20:46      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 13:29:53      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 13:40:11      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
----12/07/2006 13:40:33      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Logout 
----12/07/2006 13:40:51      rich--laptop-rb.edgebyte.local(192.168.16.4)--SSL Disabled	Login 
Tom Fanning

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Wed Jul 12, 2006 7:55 am

With regards to setting up the sourcegear logging for the managed side, what classes do I need to enable in devenv.exe.config? Sounds like enabling "all" is a bad idea, and the file says that you should be able to suggest some useful and relevant ones.
Tom Fanning

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Wed Jul 12, 2006 8:18 am

Since we don't know what's causing the crash, logging all classes is not a bad idea.

Also see this Microsoft forum post for troubleshooting tips:
http://forums.microsoft.com/MSDN/ShowPo ... 0&SiteID=1
Linda Bauer
SourceGear
Technical Support Manager

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Wed Jul 12, 2006 8:45 am

I'm on to it.
Tom Fanning

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Wed Jul 12, 2006 9:55 am

Just provoked another crash. Caught the managed log file for the first time.

Code: Select all

12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Refresh started
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] delta passed in was null, retrieving one
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] calling GetRepositoryStructure(6, 1851, -1, ref, 01/07/1850 00:00:00)
12/07/2006 16:52:35 <connection>: [<No Name>:2880] GetRepositoryStructure started.
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] GetRepositoryStructure started
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Calling client service GetRepositoryStructure(6, 1851, -1, 01/07/1850 00:00:00, ref, ref, ref)
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Client service GetRepositoryStructure returned: dtLatestCheck 01/07/1850 00:00:00, nReturnDestRevision 1851, rd not null True
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] GetRepositoryStructure finished
12/07/2006 16:52:35 <connection>: [<No Name>:2880] GetRepositoryStructure finished.
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Took mutex 2024
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Serialized CacheMember_LastStructureGetTime
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Released mutex 2024
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] GetRepositoryStructure returned: returnedRevision 1851, newLatestDate 01/07/1850 00:00:00, delta not null: True
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] RefreshCheckOutList started
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] Call GetCheckOutListChanges(Rep 6, Rev 1539, LastUpdt 01/07/1850 00:00:00)
12/07/2006 16:52:35 <connection>: [<No Name>:2880] GetCheckOutListChanges started.
12/07/2006 16:52:35 <connection>: [<No Name>:2880] GetCheckOutListChanges finished.
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] GetCheckOutListChanges returned: Rev 1539 completeList False, newLastUpdt 01/07/1850 00:00:00
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] New items:
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] 	<null>
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] Release items:
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] 	<null>
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] Source and target check out list revisions are both 1539, and last locking date match.  Returning with no update
12/07/2006 16:52:35 <checkoutlist>: [<No Name>:2880] RefreshCheckOutList finished
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Calling Repository.Update with delta
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Repository.Update finished, calling SaveRepositoryIfNothingOnDisk()
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Took mutex 2072
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] SaveIfNothingOnDisk: not saving
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Released mutex 2072
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Refreshing working folder associations from disk
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Took mutex 1848
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Released mutex 1848
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Refreshing all change set items without notify
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Took mutex 2008
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Released mutex 2008
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Took mutex 2012
12/07/2006 16:52:35 <mutex>: [<No Name>:2880] Released mutex 2012
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Calling UpdateKnownChanges_RefreshKnown with notify
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Calling NotifyTreeStructureChanged
12/07/2006 16:52:35 <refresh>: [<No Name>:2880] Refresh finished
is the only stuff in there after the moment I provoked the crash.

However this was a slightly different crash, one that I've not seen before. I actually got the "Visual Studio has performed an error blah blah, would you like to restart VS"... dialogue box this time, which I haven't seen before. VS just disappears normally.
Tom Fanning

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Wed Jul 12, 2006 4:28 pm

I'm not seeing anything helpful in the logs.

If this is machine specific, you could try starting fresh from Vault:

I'd suggest closing Visual Studio and any Vault clients on the machine.

Then delete the client-side cache files:

http://support.sourcegear.com/viewtopic.php?t=6

I'd also backup or delete the local projects and do a fresh open from source control into clean working directories.
Linda Bauer
SourceGear
Technical Support Manager

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Thu Jul 13, 2006 2:27 am

agreed about the log files.

It's not client-specific. It's happening on both of our development workstations.. VS2005 on XP Pro SP2 with latest vault client and server.

Coincidently I removed the working copy from one of the dev boxes and got a fresh copy the other day, for another reason. But the problem is still there on that box both before and after the rebuild.

I'm deleting the cache files now on one box to see if this helps.
Tom Fanning

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Thu Jul 13, 2006 2:57 am

Well a get latest, apart from using 100% CPU for ages, just appeared to have worked okay after deleting all the cache files. However occasionally get latest operations have worked fine through all this so I'll let you know what happens through the day.

Thanks for your help so far.

edit: on a slightly unrelated topic, any idea why it is that when VS is counting down the number of files it is "updating" in the pending checkins window of VS, it manages about 10 files per second, but if you unpin that window so you can't watch the files counting down, the whole process seems to run about ten times faster?
Tom Fanning

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Thu Jul 13, 2006 6:31 am

Just had a crash on the other machine, after the cache files were deleted.

Back to you shortly with log files if I can get anything useful.
Tom Fanning

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Thu Jul 13, 2006 8:03 am

Question:

Was the event log you posted earlier from the Vault client machine or the Vault Server machine?

Is your Vault Server on a different machine from either of the client machines?
Linda Bauer
SourceGear
Technical Support Manager

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Thu Jul 13, 2006 8:54 am

lbauer wrote:Question:

Was the event log you posted earlier from the Vault client machine or the Vault Server machine?
On the client.
Is your Vault Server on a different machine from either of the client machines?
Vault server is upstairs in the rack. We're downstairs with the two dev machines on ethernet.

Other dev restarted VS straight away without noting the exact time of the crash before telling me it had crashed, so it was too hard to identify the moment of the crash in the big client log. I'm waiting for the next crash to see if I can get a useful log of some description.
Tom Fanning

Locked