Skip to content
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

[mono] Fix assertion while adding a new method using Hot Reload. #75432

Merged
merged 2 commits into from
Sep 12, 2022

Conversation

thaystg
Copy link
Member

@thaystg thaystg commented Sep 12, 2022

  • Initializing the hash tables before call add_method_to_baseline to avoid the assertion.
  • Added a test case that reproduces the error, we cannot have any other difference in the source then add the new method.
  • Fixing debugging after adding a new method on blazor, the document rowid of the initial assembly is different of the document rowid of the updated assembly, so the rowid cannot be the key of the document table.

Fixes #75324

@dotnet-issue-labeler dotnet-issue-labeler bot added the area-EnC-mono Hot Reload for WebAssembly, iOS/Android, etc label Sep 12, 2022
@ghost ghost assigned thaystg Sep 12, 2022
@lambdageek lambdageek added this to the 7.0.0 milestone Sep 12, 2022
@thaystg
Copy link
Member Author

thaystg commented Sep 12, 2022

/backport to release/7.0

@github-actions
Copy link
Contributor

Started backporting to release/7.0: https://github.com/dotnet/runtime/actions/runs/3038704708

@github-actions
Copy link
Contributor

@thaystg backporting to release/7.0 failed, the patch most likely resulted in conflicts:

$ git am --3way --ignore-whitespace --keep-non-patch changes.patch

Applying: Fix assertion while adding a new method using Hot Reload.
.git/rebase-apply/patch:479: new blank line at EOF.
+
warning: 1 line adds whitespace errors.
Using index info to reconstruct a base tree...
M	src/mono/wasm/debugger/BrowserDebugProxy/DebugStore.cs
M	src/mono/wasm/debugger/BrowserDebugProxy/MonoProxy.cs
M	src/mono/wasm/debugger/DebuggerTestSuite/DebuggerTestSuite.csproj
Falling back to patching base and 3-way merge...
Auto-merging src/mono/wasm/debugger/DebuggerTestSuite/DebuggerTestSuite.csproj
CONFLICT (content): Merge conflict in src/mono/wasm/debugger/DebuggerTestSuite/DebuggerTestSuite.csproj
Auto-merging src/mono/wasm/debugger/BrowserDebugProxy/MonoProxy.cs
Auto-merging src/mono/wasm/debugger/BrowserDebugProxy/DebugStore.cs
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Fix assertion while adding a new method using Hot Reload.
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Error: The process '/usr/bin/git' failed with exit code 128

Please backport manually!

@lewing lewing merged commit 3b2f038 into dotnet:main Sep 12, 2022
@ghost ghost locked as resolved and limited conversation to collaborators Oct 12, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-EnC-mono Hot Reload for WebAssembly, iOS/Android, etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Error hot reloading new method in Blazor WebAssembly app
3 participants