Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RestoreManagerPackage being loaded synchronously which blocked UI thread and deadlocked VS #4679

Closed
jainaashish opened this issue Feb 22, 2017 · 1 comment
Assignees
Labels
Milestone

Comments

@jainaashish
Copy link
Contributor

jainaashish commented Feb 22, 2017

Internal bug: 387082

NuGet SolutionRestore Manager package with guid 2B52AC92-4551-426D-BD34-C6D7D9FDD1C5 is being loaded synchronously and blocks UI thread which caused deadlock.

0f (Inline) -------- clr!Thread::Wait+0x17 [f:\dd\ndp\clr\src\vm\threads.cpp @ 4946]
10 004fd4a8 73b1605d clr!Thread::Block(int timeOut = 0n6000, struct PendingSync * syncState = 0x004fd52c)+0x25 [f:\dd\ndp\clr\src\vm\threads.cpp @ 4903]
11 004fd558 73b1613a clr!SyncBlock::Wait(int timeOut = 0n6000, int exitContext = 0n0)+0x189 [f:\dd\ndp\clr\src\vm\syncblk.cpp @ 3564]
12 (Inline) -------- clr!ObjHeader::Wait+0x24 [f:\dd\ndp\clr\src\vm\syncblk.cpp @ 2743]
13 (Inline) -------- clr!Object::Wait+0x24 [f:\dd\ndp\clr\src\vm\object.h @ 543]
14 004fd5fc 7294a507 clr!ObjectNative::WaitTimeout(bool exitContext = false, int Timeout = 0n6000, class Object * pThisUNSAFE = 0x13217e64)+0xcb [f:\dd\ndp\clr\src\classlibnative\bcltype\objectnative.cpp @ 315]
15 004fd60c 72918bac mscorlib_ni!System.Threading.Monitor.Wait(<HRESULT 0x80004001>)+0x17 [f:\dd\ndp\clr\src\BCL\system\threading\monitor.cs @ 203]
16 004fd664 7296c69f mscorlib_ni!System.Threading.Monitor.Wait(<HRESULT 0x80004001>)+0xc [f:\dd\ndp\clr\src\BCL\system\threading\monitor.cs @ 213]
17 004fd664 7293e072 mscorlib_ni!System.Threading.ManualResetEventSlim.Wait(<HRESULT 0x80004001>)+0x1af [f:\dd\ndp\clr\src\BCL\system\threading\ManualResetEventSlim.cs @ 645]
18 004fd6a4 72999fa8 mscorlib_ni!System.Threading.Tasks.Task.SpinThenBlockingWait(<HRESULT 0x80004001>)+0xe2 [f:\dd\ndp\clr\src\BCL\system\threading\Tasks\Task.cs @ 3327]
19 004fd700 7293dedb mscorlib_ni!System.Threading.Tasks.Task.InternalWait(<HRESULT 0x80004001>)+0x150 [f:\dd\ndp\clr\src\BCL\system\threading\Tasks\Task.cs @ 3259]
1a 004fd710 7293deaa mscorlib_ni!System.Threading.Tasks.Task.Wait(<HRESULT 0x80004001>)+0x2b [f:\dd\ndp\clr\src\BCL\system\threading\Tasks\Task.cs @ 3167]
1b 004fd724 0b286910 mscorlib_ni!System.Threading.Tasks.Task.Wait(<HRESULT 0x80004001>)+0x52 [f:\dd\ndp\clr\src\BCL\system\threading\Tasks\Task.cs @ 3083]
1c 004fd7a0 0b286629 Microsoft_VisualStudio_Threading!Microsoft.VisualStudio.Threading.JoinableTaskFactory.WaitSynchronouslyCore(<HRESULT 0x80004001>)+0x198 [E:\A_work\73\s\src\Microsoft.VisualStudio.Threading.Shared\JoinableTaskFactory.cs @ 332]
1d 004fd7e4 0b28659e Microsoft_VisualStudio_Threading!Microsoft.VisualStudio.Threading.JoinableTaskFactory.WaitSynchronously(<HRESULT 0x80004001>)+0x79 [E:\A_work\73\s\src\Microsoft.VisualStudio.Threading.Shared\JoinableTaskFactory.cs @ 290]
1e 004fd7ec 05802653 Microsoft_VisualStudio_Threading!Microsoft.VisualStudio.Threading.DelegatingJoinableTaskFactory.WaitSynchronously(<HRESULT 0x80004001>)+0xe [E:\A_work\73\s\src\Microsoft.VisualStudio.Threading.Shared\DelegatingJoinableTaskFactory.cs @ 48]
1f 004fd860 0b2855a4 Microsoft_VisualStudio_Threading!Microsoft.VisualStudio.Threading.JoinableTask.CompleteOnCurrentThread(<HRESULT 0x80004001>)+0x263 [E:\A_work\73\s\src\Microsoft.VisualStudio.Threading.Shared\JoinableTask.cs @ 839]
20 004fd878 0b2850e3 Microsoft_VisualStudio_Threading!Microsoft.VisualStudio.Threading.JoinableTask.Join(<HRESULT 0x80004001>)+0x74 [E:\A_work\73\s\src\Microsoft.VisualStudio.Threading.Shared\JoinableTask.cs @ 499]
21 004fd888 6b2537be Microsoft_VisualStudio_Threading!Microsoft.VisualStudio.Threading.JoinableTask1[[System.__Canon, mscorlib]].Join(<HRESULT 0x80004001>)+0x13 [E:\A\_work\73\s\src\Microsoft.VisualStudio.Threading.Shared\JoinableTask1.cs @ 70]
*** WARNING: Unable to verify checksum for Microsoft.VisualStudio.Shell.15.0.ni.dll
22 004fd8b8 6b25366c Microsoft_VisualStudio_Shell_15_0_ni!Microsoft.VisualStudio.Shell.VsTaskLibraryHelper+<>c__DisplayClass24_11[[System.__Canon, mscorlib]].<AsVsTask>b__2(<HRESULT 0x80004001>)+0x6e [F:\dd\src\env\shell\PackageFramework\Current\Shell\VsTaskLibraryHelper.cs @ 689] 23 004fd8ec 6b25358b Microsoft_VisualStudio_Shell_15_0_ni!Microsoft.VisualStudio.Shell.VsTaskLibraryHelper+<>c__DisplayClass24_01+<b__1>d[[System.__Canon, mscorlib]].MoveNext(<HRESULT 0x80004001>)+0xac [F:\dd\src\env\shell\PackageFramework\Current\Shell\VsTaskLibraryHelper.cs @ 672]
24 004fd944 6b253521 mscorlib_ni!System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[System.__Canon, mscorlib]+0xf809d16b [f:\dd\ndp\clr\src\BCL\system\runtime\compilerservices\AsyncMethodBuilder.cs @ 72]
25 004fd98c 679a4d52 Microsoft_VisualStudio_Shell_15_0_ni!Microsoft.VisualStudio.Shell.VsTaskLibraryHelper+<>c__DisplayClass24_0`1[[System.__Canon, mscorlib]].b__1(<HRESULT 0x80004001>)+0x61
*** WARNING: Unable to verify checksum for Microsoft.VisualStudio.Shell.UI.Internal.ni.dll
26 004fd9b8 679c35c1 Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsTask.RaiseOnMarkedAsBlockingEvent(<HRESULT 0x80004001>)+0x52 [F:\dd\src\env\shell\UIInternal\Packages\TaskScheduler\VsTask_Events.cs @ 73]
27 004fd9fc 679c34c1 Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsTask.InvokeWithWaitDialog[System.__Canon, mscorlib]+0xf9 [F:\dd\src\env\shell\UIInternal\Packages\TaskScheduler\VsTask.cs @ 845]
28 004fda14 679a521d Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsTask.InvokeWithWaitDialog(<HRESULT 0x80004001>)+0x49 [F:\dd\src\env\shell\UIInternal\Packages\TaskScheduler\VsTask.cs @ 800]
29 004fda48 679ab2ac Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsTask.InternalGetResult(<HRESULT 0x80004001>)+0x121 [F:\dd\src\env\shell\UIInternal\Packages\TaskScheduler\VsTask.cs @ 581]
2a 004fda90 069bbf63 Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsTask.GetResult(<HRESULT 0x80004001>)+0xc [F:\dd\src\env\shell\UIInternal\Packages\TaskScheduler\VsTask.cs @ 411]
2b 004fda90 73a3ee59 Microsoft_VisualStudio_Shell_UI_Internal_ni!DomainNeutralILStubClass.IL_STUB_COMtoCLR(<HRESULT 0x80004001>)+0x1b
2c 004fdaf8 00e3d085 clr!COMToCLRDispatchHelper(void)+0x28 [f:\dd\ndp\clr\src\vm\i386\asmhelpers.asm @ 1918]
2d 004fdb24 68311047 CLRStub[StubLinkStub]@ae32578500e3d085(<Win32 error 0n318>)
2e 004fdb80 6830be4c msenv!CVsPackageMgr::CVsPackageInfo::SitePackage(CVsPackageMgr::LoadType loadType = Synchronous (0n0), struct IVsPackage * pPackage = 0x03128c50, struct IVsTask ** ppSiteTask = 0x004fdbdc)+0x38d [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 3152]
2f 004fdbf0 6830e11b msenv!CVsPackageMgr::CVsPackageInfo::HrInstantiatePackage(CVsPackageMgr::LoadType loadType = Synchronous (0n0), struct IVsPackage ** ppPackage = 0x004fdc38, struct IVsTask ** ppInstantiationTask = 0x00000000)+0x210 [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 2210]
30 004fdc4c 6830b882 msenv!CVsPackageMgr::CVsPackageInfo::LoadSynchronously(class std::function<long __stdcall(_GUID,IVsPackage *)> postLoadUIThreadCallback = {...})+0x3d [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 3630]
31 004fdce8 682d45f7 msenv!CVsPackageMgr::CVsPackageInfo::GetOrCreatePackage(bool closingPackages = false, CVsPackageMgr::LoadType loadType = Synchronous (0n0), int reason = 0n-3, struct _GUID * context = 0x004fdd9c {F1536EF8-92EC-443C-9ED7-FDADF150DA82}, class std::function<long __stdcall(_GUID,IVsPackage *)> postLoadUIThreadCallback = {...}, struct IVsPackage ** ppPackage = 0x004fde0c, struct IVsTask ** ppTask = 0x004fde08)+0x2f3 [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 3436]
32 004fdd64 682d46be msenv!CVsPackageMgr::HrInstantiatePackageWithContext(CVsPackageMgr::LoadType loadType = Synchronous (0n0), class std::shared_ptrCVsPackageMgr::CVsPackageInfo spPackInfo = shared_ptr {...} [0x7 strong refs, 0x1 weak ref] [default], struct PackageLoadContext * context = 0x004fdd98, struct CVsPackageMgr::LoadData * pLoadData = )+0x17e [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 2026]
33 004fddbc 682d4bd7 msenv!CVsPackageMgr::LoadPackageWithContextInternal(CVsPackageMgr::LoadType loadType = Synchronous (0n0), class std::shared_ptrCVsPackageMgr::CVsPackageInfo * spPackInfo = 0x004fde00 shared_ptr {...} [0x7 strong refs, 0x1 weak ref] [default], int reason = 0n-3, struct _GUID * context = 0x05d75fe8 {F1536EF8-92EC-443C-9ED7-FDADF150DA82}, struct CVsPackageMgr::LoadData * pLoadData = 0x004fde08)+0x4a [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 1423]
34 004fde20 682d59a2 msenv!CVsPackageMgr::LoadPackageWithContext(struct _GUID * rclsidPackage = , int reason = 0n-3, struct _GUID * context = 0x05d75fe8 {F1536EF8-92EC-443C-9ED7-FDADF150DA82}, struct IVsPackage ** ppPackage = 0x00000000)+0xe4 [f:\dd\src\env\msenv\core\vspakmgr.cpp @ 1366]
35 004fde5c 682d747b msenv!CVsShell::LoadPackageWithContext(struct _GUID * packageGuid = 0x004fdea4 {2B52AC92-4551-426D-BD34-C6D7D9FDD1C5}, int reason = 0n-3, struct _GUID * context = 0x05d75fe8 {F1536EF8-92EC-443C-9ED7-FDADF150DA82}, struct IVsPackage ** package = 0x00000000)+0x3a [f:\dd\src\env\msenv\core\vsshlsvc.cpp @ 5469]
36 004fdec4 683d9d28 msenv!CVSShellMenu::AutoLoadPackages(struct _GUID * pguidCmdUICtxt = 0x05d75fe8 {F1536EF8-92EC-443C-9ED7-FDADF150DA82})+0x15c [f:\dd\src\env\msenv\core\vsshlmnu.cpp @ 6138]

@jainaashish
Copy link
Contributor Author

Recent test run results for this failure can be found in internal bug# 387082

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants