Closed HackerBaloo closed 4 years ago
Well that funny, I think I found a workaround just moments after submitting this issue, I had both a compile_commands.json and as fallback (I thought) I also have a rather wide includePath. If I removed the includePath it just take a couple of seconds.
The includePath might be copied over to the browse.path setting, which is used to generate global symbols and a filename cache -- the initial one-time slowness could be caused by the generation of these caches -- a similar issue was reported at https://github.com/microsoft/vscode-cpptools/issues/1127 .
I don't understand steps 6-7...are you saying the slowness repeats after those steps? This is a one-time delay, right?
Yes it the slowness was repeated after every time I added or removed an empty row in the file and then ran the command again.
Sounds like you're hitting a different issue from the other one. Did you see logging in the C/C++ pane: see https://code.visualstudio.com/docs/cpp/enable-logging-cpp ? You can also run C/C++: Log Diagnostics to get info on the IntelliSense settings used by the current translation unit.
The issue didn't repro for me with just that 1 file. It's possible the processing is stuck due to IntelliSense blocking our input queue or tag parsing.
Unfortunately I can't share all of my code, but I guess that the amount of files targeted by my include statements must matter. I will try the logging instructions.
On Fri, 7 Feb 2020 at 21:57, Sean McManus notifications@github.com wrote:
Sounds like you're hitting a different issue from the other one. Did you see logging in the C/C++ pane: see https://code.visualstudio.com/docs/cpp/enable-logging-cpp ? You can also run C/C++: Log Diagnostics to get info on the IntelliSense settings used by the current translation unit.
The issue didn't repro for me with just that 1 file. It's possible the processing is stuck due to IntelliSense blocking our input queue or tag parsing.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCWGHIBT52S43EA4AQ3RBXDLBA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELESN6Y#issuecomment-583608059, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCSH7VDPNW2U5J4KN73RBXDLBANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
output.zip Well unfortunately, the log output doesnt tell the true story.
When I add an empty row and opens Go to Symbols in file, the log shows this;
sending 1 changes to server
cpptools/cpptools_finishUpdateSquiggles
Error squiggle count: 0
Update IntelliSense time (sec): 0.742
Database safe to open
but the progressbar continues 50 more seconds until the content is shown-
And today when I test again my workaround to remove the includePath setting doesn help anymore,
BTW, what did you mean by: "You can also run C/C++: Log Diagnostics"?
I tried to move: .config/Code/User/workspaceStorage/4f224539fa72c678bc070c0e1ef40450/ms-vscode.cpptools/.browse.VC.db Which was 3.9 GB. And after that it seems to work better. But of course I don't know if it is temporary. Are you interested in my 3.9 GB file?
After an afternoon of work the size of .browse.VC.db is still below 80 Mb, and the editor is still quick.
The C/C++: Log Diagnostics command can be run via the Command Palette in VS Code.
Yeah, if your database is 3.9 GB that could cause performance issues when we do operations that span the entire workspace.
We don't need your database file to diagnose the performance issue.
Well the output of the Log Diagnostics command didn't give much new information I think: -------- Diagnostics - 2/11/2020, 8:12:30 AM Version: 0.26.3 Current Configuration: { "name": "Linux", "browse.path": [ "${workspaceFolder}/", "/home/bjornca/src/develop/artifacts/" ], "defines": [], "compileCommands": "${workspaceFolder}/intermediate/compile_commands.json", "compilerPath": "/usr/bin/clang++-6.0", "cStandard": "c11", "cppStandard": "c++14", "compilerArgs": [], "browse": { "limitSymbolsToIncludedHeaders": true } } No active translation units.
On Mon, 10 Feb 2020 at 21:08, Sean McManus notifications@github.com wrote:
The C/C++: Log Diagnostics command can be run via the Command Palette in VS Code.
Yeah, if your database is 3.9 GB that could cause performance issues when we do operations that span the entire workspace.
We don't need your database file to diagnose the performance issue.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCRKXTLBTR47PSWEMKLRCGX2RA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELKCMRQ#issuecomment-584328774, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCUHUE4HJ5ZR2O4SLJDRCGX2RANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
Just removing the database and letting it rebuild by itself was not a very good idea apparently, it makes goto symbol in file fast, but then C_Cpp.SwitchHeaderSource doesnt work until I first manually open the file I want to switch to. If I put back the big database the h/cpp switch works again, but then it is to painful finding the method I'm looking for. 😖 Can I try to rebuild the database perhaps to check if the reason might be that it has been corrupted in some way perhaps?
On Tue, 11 Feb 2020 at 08:14, Björn Carlsson b.r.carlsson@gmail.com wrote:
Well the output of the Log Diagnostics command didn't give much new information I think: -------- Diagnostics - 2/11/2020, 8:12:30 AM Version: 0.26.3 Current Configuration: { "name": "Linux", "browse.path": [ "${workspaceFolder}/", "/home/bjornca/src/develop/artifacts/" ], "defines": [], "compileCommands": "${workspaceFolder}/intermediate/compile_commands.json", "compilerPath": "/usr/bin/clang++-6.0", "cStandard": "c11", "cppStandard": "c++14", "compilerArgs": [], "browse": { "limitSymbolsToIncludedHeaders": true } } No active translation units.
On Mon, 10 Feb 2020 at 21:08, Sean McManus notifications@github.com wrote:
The C/C++: Log Diagnostics command can be run via the Command Palette in VS Code.
Yeah, if your database is 3.9 GB that could cause performance issues when we do operations that span the entire workspace.
We don't need your database file to diagnose the performance issue.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCRKXTLBTR47PSWEMKLRCGX2RA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELKCMRQ#issuecomment-584328774, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCUHUE4HJ5ZR2O4SLJDRCGX2RANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
Well, I tried what I think is the official way, "C/C++: Reset Intellisence Database" and then "C/C++: Rescan Workspace" but then C_Cpp.SwitchHeaderSource still doesn't work. Should I open a new issue on that?
On Tue, 11 Feb 2020 at 08:26, Björn Carlsson b.r.carlsson@gmail.com wrote:
Just removing the database and letting it rebuild by itself was not a very good idea apparently, it makes goto symbol in file fast, but then C_Cpp.SwitchHeaderSource doesnt work until I first manually open the file I want to switch to. If I put back the big database the h/cpp switch works again, but then it is to painful finding the method I'm looking for. 😖 Can I try to rebuild the database perhaps to check if the reason might be that it has been corrupted in some way perhaps?
On Tue, 11 Feb 2020 at 08:14, Björn Carlsson b.r.carlsson@gmail.com wrote:
Well the output of the Log Diagnostics command didn't give much new information I think: -------- Diagnostics - 2/11/2020, 8:12:30 AM Version: 0.26.3 Current Configuration: { "name": "Linux", "browse.path": [ "${workspaceFolder}/", "/home/bjornca/src/develop/artifacts/" ], "defines": [], "compileCommands": "${workspaceFolder}/intermediate/compile_commands.json", "compilerPath": "/usr/bin/clang++-6.0", "cStandard": "c11", "cppStandard": "c++14", "compilerArgs": [], "browse": { "limitSymbolsToIncludedHeaders": true } } No active translation units.
On Mon, 10 Feb 2020 at 21:08, Sean McManus notifications@github.com wrote:
The C/C++: Log Diagnostics command can be run via the Command Palette in VS Code.
Yeah, if your database is 3.9 GB that could cause performance issues when we do operations that span the entire workspace.
We don't need your database file to diagnose the performance issue.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCRKXTLBTR47PSWEMKLRCGX2RA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELKCMRQ#issuecomment-584328774, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCUHUE4HJ5ZR2O4SLJDRCGX2RANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
Log Diagnostics shows "no translation unit" -- that means no IntelliSense is running. Do you have the source file active?
If SwitchHeaderSource (or Go to Def or Find All Refs) doesn't work until you open a file, it means the file wasn't parsed, probably because it wasn't included from the includePath (or browse.path) setting. You can use files.exclude to exclude folders you don't need to make the database smaller.
You can also set C_Cpp.loggingLevel to view diagnostic info in the C/C++ pane on what files are getting "tag parsed".
You could file a new issue if you want.
Also, if you're using compile_commands.json, it will try to get includePaths from that, but you may need to set your browse.path setting to include all the folders that you want to be parsed for global symbols (see https://github.com/microsoft/vscode-cpptools/issues/1715 ).
A new log diagnostics with the right file selected: -------- Diagnostics - 2/12/2020, 8:48:31 AM Version: 0.26.3 Current Configuration: { "name": "Linux", "browse.path": [ "${workspaceFolder}/", "/home/bjornca/src/develop/artifacts/" ], "defines": [], "compileCommands": "${workspaceFolder}/intermediate/compile_commands.json", "compilerPath": "/usr/bin/clang++-6.0", "cStandard": "c11", "cppStandard": "c++14", "compilerArgs": [], "browse": { "limitSymbolsToIncludedHeaders": true } } Translation Unit Mappings: [ /home/bjornca/src/develop/server/nsp_servers/csc/semantics/source/SemanticModule.cpp ]: /home/bjornca/src/develop/server/nsp_servers/csc/semantics/source/SemanticModule.cpp Translation Unit Configurations: [ /home/bjornca/src/develop/server/nsp_servers/csc/semantics/source/SemanticModule.cpp ]: Process ID: 24644 Memory Usage: 279 MB Compiler Path: /usr/bin/clang++-6.0 Includes: /home/bjornca/src/develop/server/intermediate/LinuxES_debug/include /home/bjornca/src/develop/server/include /home/bjornca/src/develop/server/nsp_servers/csc/semantics/include /home/bjornca/src/develop/server/nsp_servers/csc/semantics/interface /home/bjornca/src/develop/server/nsp_servers/csc/LonTypes/interface /home/bjornca/src/develop/server/nsp_servers/csc/accountaccess/interface /home/bjornca/src/develop/server/nsp_servers/csc/alarmmanager/alarmlib/interface /home/bjornca/src/develop/server/nsp_servers/csc/alarmmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/amfmsghub/interface /home/bjornca/src/develop/server/nsp_servers/csc/applicationscheduler/include /home/bjornca/src/develop/server/nsp_servers/csc/applicationscheduler/interface /home/bjornca/src/develop/server/nsp_servers/csc/archivemanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/asyncserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/barmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/changesetmanager/SyncMgr/interface /home/bjornca/src/develop/server/nsp_servers/csc/changesetmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/comlvalidator/interface /home/bjornca/src/develop/server/nsp_servers/csc/configurationstoragemanager/include /home/bjornca/src/develop/server/nsp_servers/csc/configurationstoragemanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/cspclient/interface /home/bjornca/src/develop/server/nsp_servers/csc/cspserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/cwsserver/include /home/bjornca/src/develop/server/nsp_servers/csc/cwsserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/defaultmodule/interface /home/bjornca/src/develop/server/nsp_servers/csc/eventmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/customUpgrade/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexBuild/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexExtract/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexExtractDecorate/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexInterpretDecorate/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexParse/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexSerialize/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexValidate/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/interface /home/bjornca/src/develop/server/nsp_servers/csc/impexmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/interface /home/bjornca/src/develop/server/nsp_servers/csc/licensemanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/logmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/moduleregistry/include /home/bjornca/src/develop/server/nsp_servers/csc/moduleregistry/interface /home/bjornca/src/develop/server/nsp_servers/csc/mrf/interface /home/bjornca/src/develop/server/nsp_servers/csc/objectmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/persistentmemorymanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/pluginmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/portaccessmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/progressmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/runtimedbmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/searchmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/securitymanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/servercontextmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/sessionmgr/interface /home/bjornca/src/develop/server/nsp_servers/csc/systemservicesmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/transactionmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/unitconverter/interface /home/bjornca/src/develop/server/nsp_servers/csc/util/interface /home/bjornca/src/develop/server/nsp_servers/csc/wblserver/wbl_proto_files/interface /home/bjornca/src/develop/server/nsp_servers/csc/wblserver/wbl_proto_files/interface/nsp /home/bjornca/src/develop/server/nsp_servers/csc/webserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/webserver/jsonlib_deprecated/interface /home/bjornca/src/develop/server/nsp_servers/csc/webserver/jsonserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/zoningmanager/interface /home/bjornca/src/develop/server/nsp_servers/interface /home/bjornca/src/develop/server/utilities/ASN.1/CPP/interface /home/bjornca/src/develop/server/utilities/ErrorMgr/interface /home/bjornca/src/develop/server/utilities/JSON/interface /home/bjornca/src/develop/server/utilities/NspLogger/interface /home/bjornca/src/develop/server/utilities/NspTCP/interface /home/bjornca/src/develop/server/utilities/authentication/interface /home/bjornca/src/develop/server/utilities/coml/interface /home/bjornca/src/develop/server/utilities/comltranslator/interface /home/bjornca/src/develop/server/utilities/comlxml/interface /home/bjornca/src/develop/server/utilities/contract/interface /home/bjornca/src/develop/server/utilities/cos/interface /home/bjornca/src/develop/server/utilities/criticalsection/interface /home/bjornca/src/develop/server/utilities/datastructures/interface /home/bjornca/src/develop/server/utilities/interface /home/bjornca/src/develop/server/utilities/msg/interface /home/bjornca/src/develop/server/utilities/netcom/CSP_Packets/interface /home/bjornca/src/develop/server/utilities/netcom/interface /home/bjornca/src/develop/server/utilities/osutils/interface /home/bjornca/src/develop/server/utilities/security/interface /home/bjornca/src/develop/server/utilities/serverapplication/interface /home/bjornca/src/develop/server/utilities/session/interface /home/bjornca/src/develop/server/utilities/sha/interface /home/bjornca/src/develop/server/utilities/string/interface /home/bjornca/src/develop/artifacts/external/boost/deliverables/interface /home/bjornca/src/develop/artifacts/external/exprtk/deliverables/interface /home/bjornca/src/develop/artifacts/external/flexnetembedded/deliverables/interface /home/bjornca/src/develop/artifacts/external/gperftools/deliverables/interface /home/bjornca/src/develop/artifacts/external/gsoap/deliverables/interface /home/bjornca/src/develop/artifacts/external/poco/deliverables/interface /home/bjornca/src/develop/artifacts/external/protobufcpp/deliverables/interface /home/bjornca/src/develop/artifacts/external/rapidjson/include /home/bjornca/src/develop/artifacts/external/snmp/deliverables/interface /home/bjornca/src/develop/artifacts/external/sqlite3/deliverables/interface /home/bjornca/src/develop/artifacts/external/sysroots/linux_pc_64_gcc-7.3.0/opt/sbo/include /usr/include/c++/8 /usr/include/x86_64-linux-gnu/c++/8 /usr/include/c++/8/backward /usr/lib/llvm-6.0/lib/clang/6.0.0/include /usr/local/include /usr/include/x86_64-linux-gnu /usr/include Defines: _DEBUG semantics_EXPORTS BOOST_ALL_NO_LIB BOOST_CHRONO_DYN_LINK BOOST_SYSTEM_DYN_LINK BOOST_THREAD_DYN_LINK POCO_NO_AUTOMATIC_LIBS PROTOBUF_FINAL= WITH_COOKIES WITH_NONAMESPACES WITH_OPENSSL WITH_PURE_VIRTUAL PROTOBUF_FINAL= Standard Version: c++14 IntelliSense Mode: clang-x64 Other Flags: --clang --clang_version=60000 Total Memory Usage: 279 MB
On Tue, 11 Feb 2020 at 20:33, Sean McManus notifications@github.com wrote:
Also, if you're using compile_commands.json, it will try to get includePaths from that, but you may need to set your browse.path setting to include all the folders that you want to be parsed for global symbols (see
1715 https://github.com/microsoft/vscode-cpptools/issues/1715 ).
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCSHFTWX2DKZYH2YXMTRCL4RJA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELNYJDY#issuecomment-584811663, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCQQXBVUVZUJKJG7TADRCL4RJANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
And the h files I want to switch to are definitely included in the include paths. Both from compile_commands.json and from browse.path. And I don't get any squiggles for bad includes.
On Wed, 12 Feb 2020 at 08:49, Björn Carlsson b.r.carlsson@gmail.com wrote:
A new log diagnostics with the right file selected: -------- Diagnostics - 2/12/2020, 8:48:31 AM Version: 0.26.3 Current Configuration: { "name": "Linux", "browse.path": [ "${workspaceFolder}/", "/home/bjornca/src/develop/artifacts/" ], "defines": [], "compileCommands": "${workspaceFolder}/intermediate/compile_commands.json", "compilerPath": "/usr/bin/clang++-6.0", "cStandard": "c11", "cppStandard": "c++14", "compilerArgs": [], "browse": { "limitSymbolsToIncludedHeaders": true } } Translation Unit Mappings: [ /home/bjornca/src/develop/server/nsp_servers/csc/semantics/source/SemanticModule.cpp ]:
/home/bjornca/src/develop/server/nsp_servers/csc/semantics/source/SemanticModule.cpp Translation Unit Configurations: [ /home/bjornca/src/develop/server/nsp_servers/csc/semantics/source/SemanticModule.cpp ]: Process ID: 24644 Memory Usage: 279 MB Compiler Path: /usr/bin/clang++-6.0 Includes: /home/bjornca/src/develop/server/intermediate/LinuxES_debug/include /home/bjornca/src/develop/server/include /home/bjornca/src/develop/server/nsp_servers/csc/semantics/include /home/bjornca/src/develop/server/nsp_servers/csc/semantics/interface /home/bjornca/src/develop/server/nsp_servers/csc/LonTypes/interface /home/bjornca/src/develop/server/nsp_servers/csc/accountaccess/interface
/home/bjornca/src/develop/server/nsp_servers/csc/alarmmanager/alarmlib/interface /home/bjornca/src/develop/server/nsp_servers/csc/alarmmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/amfmsghub/interface
/home/bjornca/src/develop/server/nsp_servers/csc/applicationscheduler/include
/home/bjornca/src/develop/server/nsp_servers/csc/applicationscheduler/interface /home/bjornca/src/develop/server/nsp_servers/csc/archivemanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/asyncserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/barmanager/interface
/home/bjornca/src/develop/server/nsp_servers/csc/changesetmanager/SyncMgr/interface /home/bjornca/src/develop/server/nsp_servers/csc/changesetmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/comlvalidator/interface
/home/bjornca/src/develop/server/nsp_servers/csc/configurationstoragemanager/include
/home/bjornca/src/develop/server/nsp_servers/csc/configurationstoragemanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/cspclient/interface /home/bjornca/src/develop/server/nsp_servers/csc/cspserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/cwsserver/include /home/bjornca/src/develop/server/nsp_servers/csc/cwsserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/defaultmodule/interface /home/bjornca/src/develop/server/nsp_servers/csc/eventmanager/interface
/home/bjornca/src/develop/server/nsp_servers/csc/impex/customUpgrade/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexBuild/interface
/home/bjornca/src/develop/server/nsp_servers/csc/impex/impexExtract/interface
/home/bjornca/src/develop/server/nsp_servers/csc/impex/impexExtractDecorate/interface
/home/bjornca/src/develop/server/nsp_servers/csc/impex/impexInterpretDecorate/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/impexParse/interface
/home/bjornca/src/develop/server/nsp_servers/csc/impex/impexSerialize/interface
/home/bjornca/src/develop/server/nsp_servers/csc/impex/impexValidate/interface /home/bjornca/src/develop/server/nsp_servers/csc/impex/interface /home/bjornca/src/develop/server/nsp_servers/csc/impexmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/interface /home/bjornca/src/develop/server/nsp_servers/csc/licensemanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/logmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/moduleregistry/include /home/bjornca/src/develop/server/nsp_servers/csc/moduleregistry/interface /home/bjornca/src/develop/server/nsp_servers/csc/mrf/interface /home/bjornca/src/develop/server/nsp_servers/csc/objectmanager/interface
/home/bjornca/src/develop/server/nsp_servers/csc/persistentmemorymanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/pluginmanager/interface
/home/bjornca/src/develop/server/nsp_servers/csc/portaccessmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/progressmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/runtimedbmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/searchmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/securitymanager/interface
/home/bjornca/src/develop/server/nsp_servers/csc/servercontextmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/sessionmgr/interface
/home/bjornca/src/develop/server/nsp_servers/csc/systemservicesmanager/interface
/home/bjornca/src/develop/server/nsp_servers/csc/transactionmanager/interface /home/bjornca/src/develop/server/nsp_servers/csc/unitconverter/interface /home/bjornca/src/develop/server/nsp_servers/csc/util/interface
/home/bjornca/src/develop/server/nsp_servers/csc/wblserver/wbl_proto_files/interface
/home/bjornca/src/develop/server/nsp_servers/csc/wblserver/wbl_proto_files/interface/nsp /home/bjornca/src/develop/server/nsp_servers/csc/webserver/interface
/home/bjornca/src/develop/server/nsp_servers/csc/webserver/jsonlib_deprecated/interface
/home/bjornca/src/develop/server/nsp_servers/csc/webserver/jsonserver/interface /home/bjornca/src/develop/server/nsp_servers/csc/zoningmanager/interface /home/bjornca/src/develop/server/nsp_servers/interface /home/bjornca/src/develop/server/utilities/ASN.1/CPP/interface /home/bjornca/src/develop/server/utilities/ErrorMgr/interface /home/bjornca/src/develop/server/utilities/JSON/interface /home/bjornca/src/develop/server/utilities/NspLogger/interface /home/bjornca/src/develop/server/utilities/NspTCP/interface /home/bjornca/src/develop/server/utilities/authentication/interface /home/bjornca/src/develop/server/utilities/coml/interface /home/bjornca/src/develop/server/utilities/comltranslator/interface /home/bjornca/src/develop/server/utilities/comlxml/interface /home/bjornca/src/develop/server/utilities/contract/interface /home/bjornca/src/develop/server/utilities/cos/interface /home/bjornca/src/develop/server/utilities/criticalsection/interface /home/bjornca/src/develop/server/utilities/datastructures/interface /home/bjornca/src/develop/server/utilities/interface /home/bjornca/src/develop/server/utilities/msg/interface /home/bjornca/src/develop/server/utilities/netcom/CSP_Packets/interface /home/bjornca/src/develop/server/utilities/netcom/interface /home/bjornca/src/develop/server/utilities/osutils/interface /home/bjornca/src/develop/server/utilities/security/interface /home/bjornca/src/develop/server/utilities/serverapplication/interface /home/bjornca/src/develop/server/utilities/session/interface /home/bjornca/src/develop/server/utilities/sha/interface /home/bjornca/src/develop/server/utilities/string/interface /home/bjornca/src/develop/artifacts/external/boost/deliverables/interface /home/bjornca/src/develop/artifacts/external/exprtk/deliverables/interface
/home/bjornca/src/develop/artifacts/external/flexnetembedded/deliverables/interface
/home/bjornca/src/develop/artifacts/external/gperftools/deliverables/interface /home/bjornca/src/develop/artifacts/external/gsoap/deliverables/interface /home/bjornca/src/develop/artifacts/external/poco/deliverables/interface
/home/bjornca/src/develop/artifacts/external/protobufcpp/deliverables/interface /home/bjornca/src/develop/artifacts/external/rapidjson/include /home/bjornca/src/develop/artifacts/external/snmp/deliverables/interface /home/bjornca/src/develop/artifacts/external/sqlite3/deliverables/interface
/home/bjornca/src/develop/artifacts/external/sysroots/linux_pc_64_gcc-7.3.0/opt/sbo/include /usr/include/c++/8 /usr/include/x86_64-linux-gnu/c++/8 /usr/include/c++/8/backward /usr/lib/llvm-6.0/lib/clang/6.0.0/include /usr/local/include /usr/include/x86_64-linux-gnu /usr/include Defines: _DEBUG semantics_EXPORTS BOOST_ALL_NO_LIB BOOST_CHRONO_DYN_LINK BOOST_SYSTEM_DYN_LINK BOOST_THREAD_DYN_LINK POCO_NO_AUTOMATIC_LIBS PROTOBUF_FINAL= WITH_COOKIES WITH_NONAMESPACES WITH_OPENSSL WITH_PURE_VIRTUAL PROTOBUF_FINAL= Standard Version: c++14 IntelliSense Mode: clang-x64 Other Flags: --clang --clang_version=60000 Total Memory Usage: 279 MB
On Tue, 11 Feb 2020 at 20:33, Sean McManus notifications@github.com wrote:
Also, if you're using compile_commands.json, it will try to get includePaths from that, but you may need to set your browse.path setting to include all the folders that you want to be parsed for global symbols (see
1715 https://github.com/microsoft/vscode-cpptools/issues/1715 ).
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCSHFTWX2DKZYH2YXMTRCL4RJA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELNYJDY#issuecomment-584811663, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCQQXBVUVZUJKJG7TADRCL4RJANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
The include shown from C/C++: Log Diagnostics are from compile_commands.json and not the same used for workspace symbol searching/parsing (from browse.path), e.g. I don't see the develop/server folder under the browse.path. Can you add those folders or was that the cause of the large database?
If you set C_Cpp.loggingLevel to "Debug" you can see more diagnostics on the browse.path affect.
develop/server is the workspace folder
On Wed, 12 Feb 2020 at 21:38, Sean McManus notifications@github.com wrote:
The include shown from C/C++: Log Diagnostics are from compile_commands.json and not the same used for workspace symbol searching/parsing (from browse.path), e.g. I don't see the develop/server folder under the browse.path. Can you add those folders or was that the cause of the large database?
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/microsoft/vscode-cpptools/issues/4934?email_source=notifications&email_token=AAA5YCV5ZM6DI7GOXMOFZ43RCRM4PA5CNFSM4KRKSHU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELSJRCA#issuecomment-585406600, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA5YCUPL3IRZ3GDSSZ5BELRCRM4PANCNFSM4KRKSHUQ .
--
Björn Carlsson Telefon 0704-10 69 77 Epost mailto://b.r.carlsson@gmail.com Blog http://hackerbaloo.blogspot.com/
Ah, okay.
Your usage of "browse.path" appears incorrect -- it should be
"browse": {
"path": [
]
}
i.e. you can add the "path" property next to your existing limitSymbolsToIncludedHeaders property.
Have you been able to see the "C/C++" debug logging yet to see what files are getting "tag" parsed? That info can help diagose issues with an incorect browse.path.
80 MB seems too small if you have a really large workspace, but the 3.9 GB might lead to performance issues. You might want to use "${workspaceFolder}/*" (non recursive) and "${workspaceFolder}/subfolder" to specify fewer directories for symbols or add folders to files.exclude.
I have now adjusted and trimmed my browsing settings. and the result is a 346 MB DB. Attached also the output when all files are tag parsed after a reset of the DB. But for some reason when I now execute "Go to Symbols in File" the progress never seems to stop. And then I tested a restart of Code, and now it works fine. Case closed I guess.
Go to Symbol in File could get stuck if our parsing queue is backed up with work. Let us know if you find a consistent repro.
A significant update to Go To Symbol has been published in the insiders build - see #11557
attached.zip Type: LanguageService What I run
To Reproduce I have a Workspace with 87000 files, 12500 of these are cpp/h files
Expected behavior It shouldn't take much longer to find the symbols in a file than it takes to compile the file.
Additional context I tried turning on logging like this, but didn't get any output. ("C_Cpp.loggingLevel": "Debug" in settings.json). But I'm very willing to provide more information.