rpc2, debugger: Fix comments around goroutine grouping (#3374)

This commit is contained in:
Andrei Matei
2023-06-06 23:44:51 -04:00
committed by GitHub
parent 8b9c3a93f5
commit 6d412c65da
2 changed files with 11 additions and 4 deletions

View File

@ -1669,9 +1669,16 @@ func formatLoc(loc proc.Location) string {
return fmt.Sprintf("%s:%d in %s", loc.File, loc.Line, fnname)
}
// GroupGoroutines divides goroutines in gs into groups as specified by groupBy and groupByArg.
// A maximum of maxGoroutinesPerGroup are saved in each group, but the total
// number of goroutines in each group is recorded.
// GroupGoroutines divides goroutines in gs into groups as specified by
// group.{GroupBy,GroupByKey}. A maximum of group.MaxGroupMembers are saved in
// each group, but the total number of goroutines in each group is recorded. If
// group.MaxGroups is set, then at most that many groups are returned. If some
// groups end up being dropped because of this limit, the tooManyGroups return
// value is set.
//
// The first return value represents the goroutines that have been included in
// one of the returned groups (subject to the MaxGroupMembers and MaxGroups
// limits). The second return value represents the groups.
func (d *Debugger) GroupGoroutines(gs []*proc.G, group *api.GoroutineGroupingOptions) ([]*proc.G, []api.GoroutineGroup, bool) {
if group.GroupBy == api.GoroutineFieldNone {
return gs, nil, false

View File

@ -657,7 +657,7 @@ type ListGoroutinesOut struct {
// be grouped with the specified criterion.
// If the value of arg.GroupBy is GoroutineLabel goroutines will
// be grouped by the value of the label with key GroupByKey.
// For each group a maximum of MaxExamples example goroutines are
// For each group a maximum of MaxGroupMembers example goroutines are
// returned, as well as the total number of goroutines in the group.
func (s *RPCServer) ListGoroutines(arg ListGoroutinesIn, out *ListGoroutinesOut) error {
//TODO(aarzilli): if arg contains a running goroutines filter (not negated)