Mon organisation a récemment appliqué une mise à jour à TFS 2015 (14.102.25423.0 selon la page "À propos de" de l'interface Web), ce qui a entraîné la création de l'onglet "Mon travail" dans Visual Studio 2015 en une minute. J'ai joué avec les requêtes et réussi à réduire le problème à la population de la section «Demandes entrantes» de cet onglet. Sous le capot, ceci est l'exécution de la requête WIQL suivante.
SELECT [System.Id], [System.Links.LinkType], [System.Title], [System.State], [System.Reason], [System.AssignedTo] FROM WorkItemLinks WHERE (Source.[System.TeamProject] = @project and Source.[System.WorkItemType] in group 'Microsoft.CodeReviewRequestCategory' and Source.[System.AssignedTo] <> @me and Source.[Microsoft.VSTS.Common.StateCode] <> '1') and ([System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward') and (Target.[System.WorkItemType] in group 'Microsoft.CodeReviewResponseCategory' and (Target.[System.AssignedTo] = @me or Target.[Microsoft.VSTS.Common.ReviewedBy] = @me) and Target.[Microsoft.VSTS.Common.StateCode] <> '2') ORDER BY [System.CreatedDate] desc, [System.Id] mode(MustContain)
Quelqu'un a-t-il des suggestions sur ce qui pourrait causer cette lenteur et sur ce qui peut être vérifié afin de réduire davantage le problème de performance?
L'Explorateur d'équipe dans Visual Studio fournit un sélecteur de list déroulante pour spécifier l' état des avis de code que l'on souhaite répertorier . Les choix disponibles sont:
My Code Reviews and Requests (open) My Code Reviews (open/mine) Incoming Requests (open/others) Recently Closed (closed) Recently Finished (finished)
( Annoté chaque input ci-dessus avec l'état et la propriété pour plus de clarté. )
Selon la description de votre problème de performance, puisque cela se produit pour tous les users, il semble y avoir un grand nombre de révisions de code dans votre équipe. Lorsque vous ouvrez l'onglet Mon travail , le chargement des différentes révisions de code entraîne un problème de performances.
Pour cette situation, vous pouvez essayer ce workaroud: basculer vers mes avis de code dans ce sélecteur déroulant Team Explorer. Après cela, veuillez vérifier si le problème n'existe plus ou s'il existe toujours.
Répondre à ma propre question ici … Mon organisation a fini par escalader cela par Microsoft et a finalement trouvé qu'il y avait un problème avec des statistics obsolètes provoquant la génération de mauvais plan de requête. La requête utilisée pour récupérer les détails de l'examen du code prenait plus de 60 secondes chaque fois qu'elle était exécutée.
Les requêtes ci-dessous vont probablement faire une différence significative avec les performances si vous rencontrez le même problème.
use <collection db name>; UPDATE STATISTICS [dbo].[tbl_WorkItemCoreLatest] WITH FULLSCAN use <collection db name>; UPDATE STATISTICS [dbo].[tbl_WorkItemCustomLatest] WITH FULLSCAN
Pour reference, il existe un double de mon message d'origine sur Microsoft Connect ici: https://connect.microsoft.com/VisualStudio/Feedback/Details/3107261 . Les commentaires de Microsoft dans ce post indiquent qu'un certain nombre de personnes ont observé un comportement similaire.