Closed
Description
Sample failure:
https://build.golang.org/log/66aed38eb7030ee6db09e17179d26ce42d59b316
Lazy interface completion causes data races in x/tools. We need to either make interface completion concurrency-safe, or ensure that all interfaces that escape the Checker have been completed.
CC @griesemer
Metadata
Metadata
Assignees
Labels
Type
Projects
Relationships
Development
No branches or pull requests
Activity
griesemer commentedon Aug 16, 2021
Is this because Interface.Complete is not doing anything anymore? That is, would it be sufficient to revert that change? Or is it a bigger problem?
findleyr commentedon Aug 16, 2021
Necessary but not sufficient. Here's a failure at the dev.typeparams merge:
https://build.golang.org/log/53e6ff359c770b04ed89035e59f2038b3d87268e
gopherbot commentedon Aug 16, 2021
Change https://golang.org/cl/342710 mentions this issue:
Revert "go/types: make Interface.Complete a no-op"
gopherbot commentedon Aug 17, 2021
Change https://golang.org/cl/342749 mentions this issue:
go/types: check if the interface is already complete in Complete
Revert "go/types: make Interface.Complete a no-op"
go/types: check if the interface is already complete in Complete
findleyr commentedon Aug 17, 2021
I believe this is fixed now, but I'll leave it open for visibility in case there are any additional flakes in the race builders.
Will close tomorrow if no additional failures.
findleyr commentedon Aug 17, 2021
Closing as the build dashboard looks clean.