Register SDN informers synchronously#15353
Register SDN informers synchronously#15353liggitt merged 1 commit intoopenshift:masterfrom liggitt:sdn-register-order
Conversation
|
lgetm too much work to rewire the underlying controller to be more "normal"? |
|
needs picking back to 3.6 (exists there too), so keeping it minimal for the moment |
ok |
|
continuous-integration/openshift-jenkins/merge Waiting: You are in the build queue at position: 16 |
|
Evaluated for origin merge up to 254aa79 |
|
[Test]ing while waiting on the merge queue |
|
[test] |
|
#14633 puts all controller initialization in a goroutine isolated from the api startup. it expects each controller's init function to register shared informer event handlers synchronously, spawn workers in goroutines, then return. once all init functions return, the controller code starts the shared informers. |
|
removed merge tag, updated with potential fix restoring controller role reconciliation at startup. PTAL |
|
[test][merge] |
|
Evaluated for origin test up to d6c198a |
|
continuous-integration/openshift-jenkins/test SUCCESS (https://ci.openshift.redhat.com/jenkins/job/test_pull_request_origin/3348/) (Base Commit: 7a48deb) (PR Branch Commit: d6c198a) |
|
green tests on latest master. merging to unblock the queue. |
Fixes #15337
Fixes #15336
The SDN controller was registering shared informer event handlers in a goroutine, so registration raced with informer start. If the registration lost, then SDN event handlers would never get namespace events.