streamnative / pulsar-resources-operator

Apache License 2.0
30 stars 15 forks source link

[improve]: optimize the controller reconcile #223

Open ericsyh opened 1 month ago

ericsyh commented 1 month ago

Background

Now the resource operator uses a single controller for all resources CR, and the reconcile now is executed sequentially. If one resource is illegal the reconcile will be interrupted and impact the following resource update.

How to improve

Ideally we should separate controller for each resource CR and make sure each one has a separate reconcile as the https://github.com/streamnative/pulsar-resources-operator/issues/69 wanna do. But it may take longer time to do the refactor, so we can have a quick way to optimize: we can udpate the controller error handlding and don't stop the reconcile even some resources updating were failed. Then the resource update won't be missed or stopped even some Pulsar admin API call fails.

freeznet commented 2 weeks ago

reopen this because #225 only solves the topic resource, but not other type of resources.

freeznet commented 2 weeks ago

https://github.com/streamnative/pulsar-resources-operator/pull/244/commits/db49be7bcdc977b31f7f233036e32a60a938a0c2 fixes the namespace reconclie