Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 VA View "includes": "expand and copy" takes hours

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

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

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
peterchen Posted - Sep 22 2014 : 03:48:05 AM
I've tried viwing "Includes" in the VA View for a typical file.

After almost one hour, it's still sitting with the

quote:
Building tree hierachy: 91120 tree nodes


dialog, counting up by ~10/second (started out with ~100/second)

clicking "Cancel" give control back to visual studio, and counting stops, but the dialog does not disappear (and Visual Studio can't be closed except by terminating it through task manager)

While boost deps (such as shared_ptr.hpp) pull in large-ish sub trees, I'm not certian they really build up to 100k of dependencies.

Visual Studio 2008, VAX 10.9.2047.0 built 2014.09.16, Windows 8.1
7   L A T E S T    R E P L I E S    (Newest First)
feline Posted - Nov 20 2014 : 11:33:17 PM
Out of interest how large is your solution?

If you open VA's Open File in Solution dialog (Alt-Shift-O) the title bar contains two numbers. The first number is the number of files currently listed, which changes as you filter the list. The second number is the total number of files in the list, which is normally the number of files in your solution. What is this second number?

I am assuming we are just running into very interlinked and complex relationships here, especially since it does work in principle, which is good to know.
peterchen Posted - Nov 18 2014 : 05:50:05 AM
Thank you!

Cancel now works fine (build 2052, VS2008).


It's still running for hours (literally!) unfortunately - I guess it's the many include paths for the same headers.

A simple test (windows.h + vector + shared_ptr.hpp) completes in roughly less than a second, so it seems to work fine now in principle :)
sean Posted - Nov 07 2014 : 09:50:48 AM
Build 2052 has a change to the cancel handler. We weren't able to repro the problem, so can't say if it is fixed.
accord Posted - Oct 09 2014 : 5:10:10 PM
A possible fix should be in the next build.
accord Posted - Oct 02 2014 : 9:23:48 PM
Although I'm unable to repro, I found something that might solve this problem.

Can you please send an email to our support or use this form?

http://www.wholetomato.com/support/contact.asp

Please mention the URL of this topic so we can match it up.
peterchen Posted - Sep 30 2014 : 09:46:38 AM
> we parse every branch.

Makes sense.

> Are you always able to reproduce this or was this a one-off problem?

Yes, always

> Does it make any difference if you cancel it after a few items or wait more?

Does not make a difference.


(Not much of an issue for me since - with the time it takes - I won't be using it much, but if you want to fix it and I can help, sure :))

accord Posted - Sep 22 2014 : 9:28:46 PM
quote:
While boost deps (such as shared_ptr.hpp) pull in large-ish sub trees, I'm not certian they really build up to 100k of dependencies.


While compilers can skip whole branches that are defined again, we parse every branch. Skipping is especially fast when #pragma once is used, the compiler doesn't even need to open the file again.

An extremely simplified example: consider you include 2 files to a cpp:

#include <1.h>
    #include <a.h>
    #include <b.h>
#include <2.h>
    #include <a.h>
    #include <b.h>

We build the whole tree while the compiler skips a.h and b.h (and all files included by them) in 2.h. So our process will result in multiple times more items. Since this is a recursive process, we may need to work with say 1000 times more items.

The process is itself not superfast since this is only an extra feature - we didn't designed it to open ALL nodes at once, originally. Since this is a tree, you should not need to do this expand all at the root level, since you can work with the tree directly.

quote:
clicking "Cancel" give control back to visual studio, and counting stops, but the dialog does not disappear

Are you always able to reproduce this or was this a one-off problem?
Does it make any difference if you cancel it after a few items or wait more?

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