-
Notifications
You must be signed in to change notification settings - Fork 8.1k
Revert "Fix slow execution when many breakpoints are used (#14953)" #20042
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
Conversation
This reverts commit d8decdc. This commit broke the VS Code extension's debugger, and should be reverted until such time that the root cause is found and a fix applied.
|
This PR has Quantification details
Why proper sizing of changes matters
Optimal pull request sizes drive a better predictable PR flow as they strike a
What can I do to optimize my changes
How to interpret the change counts in git diff output
Was this comment helpful? 👍 :ok_hand: :thumbsdown: (Email) |
| // TODO: This actually hit in a Parallels VM, so it's not quite dead yet! | ||
| // Diagnostics.Assert(false, "Really it is a dead code since GetDosDevice() is called only if PSDrive.DriveType == DriveType.Network"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please open an issue about this and mark it "7.4-Blocking".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Which commit, the debugger being broken or the executable failing on my VM, or both?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Open an issue about the fact that this assertion is wrong on Parallels VM. This code path needs to be reviewed as the assumption is incorrect. Can you please find out what the PSDrive.DriveType is when running in Parallel VM?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@andyleejordan Can you please check what PSDrive.DriveType is when the assertion fails in Parallel VM and share that info in #20043? Thanks!
|
@daxian-dbw filed #20043 and #20044 |
| { | ||
| Diagnostics.Assert(false, "Really it is a dead code since GetDosDevice() is called only if PSDrive.DriveType == DriveType.Network"); | ||
| // TODO: This actually hit in a Parallels VM, so it's not quite dead yet! | ||
| // Diagnostics.Assert(false, "Really it is a dead code since GetDosDevice() is called only if PSDrive.DriveType == DriveType.Network"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a fallback from another p/invoke GetUNCForNetworkDrive - it is main code path. This says that something can work incorrectly on Parallels VM.
So I suggest investigate the issue in separate PR. Perhaps we need a workaround as we did for WSL.
|
Superseded by #20046 |
PR Summary
This reverts commit d8decdc.
This commit broke the VS Code extension's debugger, and should be
reverted until such time that the root cause is found and a fix applied.
Also disable false assertion that blocks pwsh on Parallels VM.
PR Context
The resolves PowerShell/vscode-powershell#4668, where the VS Code extension's debugger no longer worked with preview.4. First I confirmed that it worked with preview.3, then I cloned and built from source. After looking at the diff between preview.3 and preview.4 for changes that affected the debugger in the engine, I only found #14953. While I've looked at the changes in that PR, I haven't yet isolated what broke things; but I reverted the merge commit and confirmed the debugger works again.
PR Checklist
.h,.cpp,.cs,.ps1and.psm1files have the correct copyright headerWIP:or[ WIP ]to the beginning of the title (theWIPbot will keep its status check atPendingwhile the prefix is present) and remove the prefix when the PR is ready.(which runs in a different PS Host).