-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Open
Labels
NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone
Description
When happy eyeballs is enabled, DialContext makes parallel calls to dialSingle via dialParallel:
Line 415 in 424b065
func dialParallel(ctx context.Context, dp *dialParam, primaries, fallbacks addrList) (Conn, error) { |
Each dialSingle call may call ctx.Value, such as here:
Line 533 in 424b065
trace, _ := ctx.Value(nettrace.TraceKey{}).(*nettrace.Trace) |
dialParallel doesn't wait for all dialSingle calls to complete. This means, in theory, dialSingle can call ctx.Value on a ctx that has gone out of scope. This is effectively the same problem as #21597.
/cc @bcmills
Metadata
Metadata
Assignees
Labels
NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.