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

runtime: current heapdump format is undocumented #15169

Open
mdempsky opened this Issue Apr 7, 2016 · 5 comments

Comments

Projects
None yet
7 participants
@mdempsky
Member

mdempsky commented Apr 7, 2016

runtime/debug.WriteHeapDump's godocs link to https://golang.org/s/go15heapdump, but that describes a file format that starts with "go1.5 heap dump\n".

Currently, runtime.dumphdr is "go1.7 heap dump\n". Before 30f93f0, it was "go1.6 heap dump\n". So that's at least two revisions to the heap dump file format that are undocumented.

Relevant because https://go-review.googlesource.com/#/c/21647/1 might change the heap dump format again.

/cc @crawshaw

@bradfitz

This comment has been minimized.

Member

bradfitz commented Apr 7, 2016

We need to stop documenting the heap dump in a wiki and document it in the main go repo in the same commit where the format changes.

Ideally with, say, tests. And ideally end-to-end tests writing then reading the heap dump that would break if the heapdump format changes. (which empirically it does, regularly)

/cc @randall77

@bradfitz bradfitz modified the milestones: Unplanned, Go1.7 Apr 7, 2016

@randall77

This comment has been minimized.

Contributor

randall77 commented Apr 7, 2016

@gopherbot

This comment has been minimized.

gopherbot commented Apr 11, 2016

CL https://golang.org/cl/21647 mentions this issue.

gopherbot pushed a commit that referenced this issue Apr 11, 2016

runtime: remove remaining references to TheChar
After mdempsky's recent changes, these are the only references to
"TheChar" left in the Go tree. Without the context, and without
knowing the history, this is confusing.

Also rename sys.TheGoos and sys.TheGoarch to sys.GOOS
and sys.GOARCH.

Also change the heap dump format to include sys.GOARCH
rather than TheChar, which is no longer a concept.

Updates #15169 (changes heapdump format)

Change-Id: I3e99eeeae00ed55d7d01e6ed503d958c6e931dca
Reviewed-on: https://go-review.googlesource.com/21647
Reviewed-by: Matthew Dempsky <mdempsky@google.com>

@rsc rsc modified the milestones: Go1.8, Go1.7 May 18, 2016

@quentinmit quentinmit added the NeedsFix label Oct 11, 2016

@rsc

This comment has been minimized.

Contributor

rsc commented Nov 11, 2016

Undocumented but also nearly unusable. Leave both for Go 1.9.

@rsc rsc modified the milestones: Go1.9, Go1.8 Nov 11, 2016

@aclements

This comment has been minimized.

Member

aclements commented Jun 7, 2017

Bumping to 1.10. Most likely we're going to rip out the heap dump format and replace it with @randall77's core dump reader, at which point this will become obsolete, but that's not going to happen until 1.10.

@aclements aclements modified the milestones: Go1.10, Go1.9 Jun 7, 2017

@rsc rsc modified the milestones: Go1.10, Go1.11 Nov 22, 2017

@gopherbot gopherbot modified the milestones: Go1.11, Unplanned May 23, 2018

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