Author Topic: Symbols are slow.  (Read 1958 times)

jporkkahtc

  • Senior Community Member
  • Posts: 1900
  • Hero Points: 184
  • Text
Symbols are slow.
« on: May 02, 2013, 05:27:41 pm »
This is a problem that has long plagued slick users.
With 18 beta1 I've been having lots of problems with symbol lookups being quite slow.

I upgraded from 17.0.3 to 18B1.
I created new projects / workspaces so that I could freely switch between 17 and 18.
When running 18 I (more) frequently run into long (30 seconds or more) hang-times when doing things like push-tag or push-ref.

I'd really like to see problems like this fixed, reliably, permanently, more than I want lots of new features.

Dennis

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2920
  • Hero Points: 438
Re: Symbols are slow.
« Reply #1 on: May 02, 2013, 08:15:58 pm »
A few questions:

1) Are the delays consistent or inconsistent?  If you encounter the delay and then do push-tag on the same item again, do you again see a delay, or is it quick?  If the delays are consistent, try using the following command from the slickedit command line to trace the work slickedit does to find the tag.
Code: [Select]
codehelp-trace-push-tagThis is another useful way to see where the time is being spent.
Code: [Select]
profile push-tag
2) Do you have to option to filter out non-matching function overloads enabled or disabled?  This can be useful, but there is no way around it being a costly operation for our symbol processing.  Document > C/C++ Options... > Context Tagging > Go To Definition

3) How many choices do you get when the "Select a symbol" dialog comes up?  You can adjust the maximum number of symbols found (the default is 1000).  Tools > Options... > Editing > Context Tagging > Maximums.

4) Does this tend to happen shortly after you have started SlickEdit, or after you have been running the editor for a significant amount of time?  Sometimes you will see delays if you do tag navigation immedately after starting the editor because the tag databases are still being loaded into memory and/or background tagging may be active.

5) We have a logging option for background tagging, which might help you determine if something was going on in the background when you encountered a tag navigation delay.

6) How many tag files do you have and how large are they?  Are they local or remote?

jporkkahtc

  • Senior Community Member
  • Posts: 1900
  • Hero Points: 184
  • Text
Re: Symbols are slow.
« Reply #2 on: May 03, 2013, 10:43:52 pm »
Mostly, I'm working with Java.
2:Filter out overloads: This option is not selected.
3:# of choices: None - it just goes to the right place, single symbol.
4:This happens sometimes after VS has been running for hours.
5:how do I enable background tagging logging?
6: All files and tag files are local.
Workspace tag file: 6MB
Java JDK Tagfile: 28MB


push-tag, very slow - 30 seconds or so.
Next time it is faster, but still a couple of seconds.

Where can I upload codehelp-trace-push-tag results privately?


Dennis

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2920
  • Hero Points: 438
Re: Symbols are slow.
« Reply #3 on: May 06, 2013, 12:43:59 pm »
Send them in a PM or into support.  It would be most useful to provide both the trace results and the profiling output.

You can enable background tagging logging by setting the macro variable "def_tagging_logging" to 1.
The results will be written to <config>/logs/tagging.log