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

Improve debugger handling of large objects. #74230

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

baptr
Copy link
Contributor

@baptr baptr commented Mar 2, 2023

It's confusing to see <null> objects in the debugger inspector when
they should be assigned, and hard to track down why it might be.

It turns out the remote debugger's DebuggerMarshalls serialize functions
default to transferring at most 1MiB of data. Before this, it would
silently drop anything that would be too large.

  • Stop recursively encoding objects when checking their size, since
    they're not actually sent that way.
  • Change PROPERTY_HINT_OBJECT_TOO_BIG to a more generic
    PROPERTY_HINT_ENCODING_ERROR and use hint_string to specify the issue.
  • Surface the new ENCODING_ERROR hint_string in the debugger.
  • Plumb ENCODING_ERROR hints (but no others) through the remote
    debugger.

@YuriSizov
Copy link
Contributor

  • Change PROPERTY_HINT_OBJECT_TOO_BIG to a more generic
    PROPERTY_HINT_ENCODING_ERROR and use hint_string to specify the issue.

Just a heads up, that this is a breaking change and makes this PR unlikely to be merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants