-
Notifications
You must be signed in to change notification settings - Fork 29.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Non-stop 'variables' requests after logging with variablesReference #18001
Comments
Also, after terminating the session, I get another variables request, which fails because Chrome is shut down. |
This is by design of our debug console, namely on every new element we refresh the whole console since the console is implemented using a tree and that is the only way to show a new element in the tree. Unfortunetly for your use case you end up in an endless loop This should be fixed via #11462 |
This is causing https://github.com/Microsoft/vscode-chrome-debug/issues/364 now - I thought something like this might happen, but I hadn't seen any problem until Chrome 56 was released. After refreshing the page, the debug adapter can't request the properties of objects that were logged earlier. I can fix this by caching the data in the debug adapter. If I don't, and just respond with an empty request or error, logged objects from before the refresh will disappear from the console, which is not helpful. But can we cache this data on vscode's side so other debug adapters can benefit? It's also leading to lots of unnecessary traffic on the debug adapter socket, and I wonder if it would cause problems in a very long debug session. |
@roblourens now I am caching children for all expressions. Hopefully this does not break anything, we can wait and see. Previously I was not doing any caching because the tree would cache for me, but as you nicely point out here in REPL we are doing a lot of refreshes so we should also cache on our side. I invalidate the cache whenever an expression container changes reference so I belive that should catch all cases. @joaomoreno I tried using your nice |
@roblourens please verify |
verboseDiagnosticLogging
enabled.console.log({a: 1})
It looks like the console is being refreshed constantly, if you can't repro it I can debug some more.
The text was updated successfully, but these errors were encountered: