microsoft / microsoft/vscode-cpptools

Workspace symbol search can randomly take longer if files are being tag parsed

Open
#11,945 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug Feature: Symbol Search Language Service performance
Dominant language
TypeScript
Stars
6.2k
Forks
1.7k
Avg merge
14h 46m
Merged PRs (30d)
61

Description

This is after the other performance fixes in 1.19.3. I've seen up to 5 seconds extra on Windows with a large workspace. Longer delays might be possible Linux and Mac or slower machines (not sure yet).

This might be fixable via preventing other threads from updating the database if a document or workspace symbol search is in progress.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the delay on Windows with a large workspace while files are being tag parsed, comparing workspace symbol searches with and without concurrent parsing. Investigate how symbol search and tag-parser database updates interact; done means the extra multi-second delay is no longer observed.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, typescript
Domain
devtools, performance, search
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.