Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 VaCodeInspectionsServer got stuck in a busy loop

You must be registered to post a reply.
Click here to register.

Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji

Forum code is on.
Html is off.

Check to subscribe to this topic.

T O P I C    R E V I E W
alex.postlethwaite Posted - Sep 21 2018 : 04:09:46 AM

I did a code completion operation in VS 2017 (I can't figure out specifically which one I'm afraid) and when I later exited VS the CodeInspectionsServer was still running using 1 cpu core.

I've got a minidump which I'll upload via the contact form.

VA_X.dll file version 10.9.2283.2 built 2018.08.02
DevEnv.exe version 15.8.28010.2026 Professional
msenv.dll version 15.0.28010.2026
Comctl32.dll version 6.10.17134.285
Windows 10 10.0 Build 17134.285
8 processors (x86-64, WOW64)
Language info: 1252, 0x809

Platform: Project defined
Stable Includes:
C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\Include\um;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.15063.0\winrt;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.15063.0\shared;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.15063.0\um;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\VS\UnitTest\include;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.15063.0\ucrt;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\VS\include;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.15.26726\atlmfc\include;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.15.26726\include;
C:\Program Files (x86)\Windows Kits\8.1\Include\winrt;
C:\Program Files (x86)\Windows Kits\8.1\Include\shared;
C:\Program Files (x86)\Windows Kits\8.1\Include\um;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt;

Other Includes:

Stable Source Directories:
C:\Program Files (x86)\Windows Kits\10\Source\10.0.15063.0\ucrt;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\VS\src;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.15.26726\crt\src;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfcm;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc;
C:\Program Files (x86)\Windows Kits\10\Source\10.0.10240.0\ucrt;
7   L A T E S T    R E P L I E S    (Newest First)
alex.postlethwaite Posted - Sep 25 2018 : 06:03:32 AM
Okay. Thanks for the update.

sean Posted - Sep 24 2018 : 12:51:12 PM
Thanks for sending the dump. The process was aware that VS had exited but a worker thread was busy in an inefficient long running loop and would have eventually exited. We do expect to have a couple of performance improvements in that exact area in the Oct/Nov timeframe.
alex.postlethwaite Posted - Sep 24 2018 : 09:56:03 AM
They are all functions in a namespace.
There are some hand written ones for base types, and then a bunch of generated overloads for structures.

Broadly like this, for example:


namespace serialise
    void Write(Buffer * b, int v) { ... }
    void Write(Buffer * b, float v) { ... }


struct Foo
    int i;
    float f;


namespace serialise
    void Write(Buffer * b, Foo * f)
        Write(b, f->i);
        Write(b, f->f);

feline Posted - Sep 24 2018 : 08:56:02 AM
Interesting, so it could be that simply parsing the file on opening is where Code Inspection got stuck.

For the auto generated Read function, is this a class member function? Or are all of the overloads outside of a class? I am not sure if it matters, but it will have an effect on setting up a test case here, since that is a lot of overloads
alex.postlethwaite Posted - Sep 24 2018 : 03:58:58 AM
I'm not 100% sure, but one possibility:

We have some auto-generated code that results in a function called 'Read' with about 200 overloads.

I did Alt-G and the ambiguity resolution context menu showed up. I pressed the down arrow at the bottom a few times and then chose the one I wanted to go to.

If that doesn't repro... I'm not sure, sorry.

I only noticed it was stuck after I'd exited the IDE.
feline Posted - Sep 21 2018 : 10:21:26 AM
I am not initially seeing anything obvious in the call stack, but I am not an expert here. Have you seen this problem before, or was this a one off problem? I am wondering if you might have any way of reproducing this. That would open the door to logging what Code Inspection was up to when this happened.

Do you remember which code file you were working in when this happened?
feline Posted - Sep 21 2018 : 09:03:04 AM
I have the file, thank you for this:


© 2021 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000