-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
concurrency errors when printing source.TypedSource #3057
Comments
nicks
added a commit
to tilt-dev/tilt
that referenced
this issue
Jan 3, 2025
prevents race conditions that cause a panic for more info, see kubernetes-sigs/controller-runtime#3057 Signed-off-by: Nick Santos <[email protected]>
nicks
added a commit
to tilt-dev/tilt
that referenced
this issue
Jan 3, 2025
prevents race conditions that cause a panic for more info, see kubernetes-sigs/controller-runtime#3057 Signed-off-by: Nick Santos <[email protected]>
Extending the interface to ensure that this can be printed, would that be something we would want to enforce? Only because the builtins already satisfy that so there would be no breaking changes but only when we release a new version that we can express for those who have custom sources. Thoughts? @alvaroaleman @sbueringer |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Repro steps:
Result:
Non-deterministically, controller-runtime blows up with this error:
(full stack trace included below)
The Problem
Controller does a
fmt.Printf
on the Source, which implicitly reads all the internal properties.controller-runtime/pkg/internal/controller/controller.go
Line 178 in 1ac370e
All the built-in Sources implement fmt.Stringer with a concurrency-safe
String() string
method, so do not have this problem.Suggestion: the TypedSource interface should also implement
fmt.Stringer
, so that all implementers have to implement String()Additional info
Full stack trace:
The text was updated successfully, but these errors were encountered: