27241

TFS: Get latest causes slow project reloading

We're working with a solution which has multiple projects which references NuGet packages from other solutions.

Every time we do get latest from the TFS server on the solution, Visual Studio (2015) starts reloading each project in the solution which takes a really long time. Now this wasn't always the case, since this started happening only a few weeks back (the solution is a year old).

We have other solutions which were already experiencing this problem and our solution is to close the solution, then do get latest, then reload the project which is much, much faster.

Can anybody explain why this is happening and how to fix this issue?

Answer1:

This has been reported as a bug to MSFT, see Slow project reloading & Reload of projects is slow after call to TFS to get latest changeset. It seems your project files are updated from outside VS, which causes VS to load all them. More details please see the reply from VS IDE team:

Main culprit is, <strong>your project files are being updated from outside VS</strong>, <strong>which causes VS to load each of them one by one</strong>. This is extremely taxing process and it happens on the main UI thread. Hence, this ASL logic is on-by-default to alleviate unresponsive solution loads. Essentially, you’re pointing out a limitation in our ASL logic that we hadn’t considered. This will be considered for a future release, thank you.

In the meantime, <strong>one way to mitigate the problem would be to force solution reload by touching the solution file, the *.sln file, which will trigger ASL to kick in, basically VS thinking you’re doing full solution load and it will optimize responsiveness time as much as possible.</strong>

Ulzii Luvsanbat

Visual Studio IDE Team

Recommend

  • How do I set breakpoints using the Photran IDE in Eclipse?
  • ViewExpiredException in Firefox and IE after migrating to Jboss 7.0 AS [duplicate]
  • Meteor stuck at Extracting meteor-tool@1.4.0-1
  • Python kernel dies when importing tensorflow 1.7
  • LyX — Title, Abstract, Keywords Missing When Using Elsevier Class in View
  • gulp.watch running same task multiple times when saving many files
  • django server code not updating
  • twisted.internet.error.ConnectError when run scrapy spider
  • 3D Math: Calculate Bank (Roll) angle from Look and Up orthogonal vectors
  • Refactoring advice: maps to POJOs
  • calculating number of bytes of each row in an image
  • @tailrec why does this method not compile with 'contains a recursive call not in tail position&
  • Double dispatch in Java example
  • Problem with Django using Apache2 (mod_wsgi), Occassionally is “unable to import from module” for no
  • Python pandas melting data to multiple columns and coulmn names in another column
  • SQL Query - Table Joining Problems
  • Invalid Date on validation Date of js
  • Django model inheritance, filtering models
  • Position: fixed nav does not stay fixed
  • MySQL Order by column = x, column asc?
  • How can I speed up CURL tasks?
  • Zurb Foundation _global.scss meta styles for js?
  • Regex thinks I'm nesting, but I'm not
  • C# - Is there a limit to the size of an httpWebRequest stream?
  • Is my CUDA kernel really runs on device or is being mistekenly executed by host in emulation?
  • Optimizing database types to compact database (SQLite)
  • Why HTML5 Canvas with a larger size stretch a drawn line?
  • Bug in WPF DataGrid
  • Controls, properties, events and timers running in design time
  • Javascript Callbacks with Object constructor
  • Running a C# exe file
  • Join two tables and save into third-sql
  • How to model a transition system with SPIN
  • Updated Ionic CLI but shows previous version (Windows)
  • ActionScript 2 vs ActionScript 3 performance
  • How to make Safari send if-modified-since header?
  • ORA-29908: missing primary invocation for ancillary operator
  • How do I rollback to a specific git commit
  • Reading document lines to the user (python)
  • Converting MP3 duration time