Commit 94029d0
committed
🐛 Error when source.Start() never returns
Contrary to everything else in controller-runtime, we expect
`source.Start` to be non-blocking. If someone implements a custom source
and gets this wrong, the resulting behavior is that the binary starts
successfully, but no reconciliation happens which is extremely difficult
to understand and debug.
This change makes us use the `CacheSyncTimeout` not only for the sources
`WaitForSync` but also for its `Start`.
It is worth noting that the current design of both requiring `Start` to
not block and `WaitForSync` to block is very confusing. It likely came
to be because we basicaly require two distinct contexsts in `Start`, one
to indicate the lifetime of the `Source` and one to indicate the `Start`
timeout.
To overall simplify and improve the code, the change also parallelizes
the `Start` of the sources.1 parent aaaefb4 commit 94029d0
File tree
3 files changed
+86
-44
lines changed- pkg/internal
- controller
- source
3 files changed
+86
-44
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| 28 | + | |
27 | 29 | | |
28 | 30 | | |
29 | 31 | | |
| |||
171 | 173 | | |
172 | 174 | | |
173 | 175 | | |
| 176 | + | |
174 | 177 | | |
175 | | - | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
192 | 181 | | |
193 | 182 | | |
194 | 183 | | |
195 | 184 | | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
201 | 207 | | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
202 | 216 | | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
| 217 | + | |
208 | 218 | | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
209 | 225 | | |
210 | 226 | | |
211 | 227 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
| 148 | + | |
148 | 149 | | |
149 | 150 | | |
150 | 151 | | |
| |||
158 | 159 | | |
159 | 160 | | |
160 | 161 | | |
161 | | - | |
162 | | - | |
163 | 162 | | |
164 | 163 | | |
165 | 164 | | |
166 | 165 | | |
| 166 | + | |
167 | 167 | | |
168 | 168 | | |
169 | 169 | | |
| |||
174 | 174 | | |
175 | 175 | | |
176 | 176 | | |
177 | | - | |
| 177 | + | |
178 | 178 | | |
179 | 179 | | |
180 | 180 | | |
| |||
200 | 200 | | |
201 | 201 | | |
202 | 202 | | |
203 | | - | |
204 | | - | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
205 | 215 | | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
206 | 225 | | |
207 | 226 | | |
208 | 227 | | |
209 | 228 | | |
210 | | - | |
211 | | - | |
| 229 | + | |
212 | 230 | | |
213 | 231 | | |
214 | 232 | | |
215 | 233 | | |
216 | 234 | | |
217 | 235 | | |
218 | 236 | | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
223 | | - | |
224 | 237 | | |
225 | 238 | | |
226 | 239 | | |
| |||
230 | 243 | | |
231 | 244 | | |
232 | 245 | | |
| 246 | + | |
233 | 247 | | |
234 | 248 | | |
235 | 249 | | |
| |||
269 | 283 | | |
270 | 284 | | |
271 | 285 | | |
| 286 | + | |
272 | 287 | | |
273 | 288 | | |
274 | 289 | | |
| |||
281 | 296 | | |
282 | 297 | | |
283 | 298 | | |
| 299 | + | |
284 | 300 | | |
| 301 | + | |
285 | 302 | | |
286 | 303 | | |
287 | 304 | | |
288 | 305 | | |
289 | 306 | | |
| 307 | + | |
290 | 308 | | |
291 | 309 | | |
292 | 310 | | |
293 | 311 | | |
294 | | - | |
295 | | - | |
296 | | - | |
297 | | - | |
| 312 | + | |
| 313 | + | |
298 | 314 | | |
299 | 315 | | |
300 | 316 | | |
301 | 317 | | |
| 318 | + | |
302 | 319 | | |
303 | 320 | | |
304 | 321 | | |
| |||
852 | 869 | | |
853 | 870 | | |
854 | 871 | | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
855 | 881 | | |
856 | 882 | | |
857 | 883 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
55 | | - | |
| 55 | + | |
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
| |||
0 commit comments