-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Revision should manage activation #1997
Copy link
Copy link
Closed
Labels
area/APIAPI objects and controllersAPI objects and controllersarea/networkingkind/cleanupCategorizes issue or PR as related to cleaning up code, process, or technical debt.Categorizes issue or PR as related to cleaning up code, process, or technical debt.kind/specDiscussion of how a feature should be exposed to customers.Discussion of how a feature should be exposed to customers.
Milestone
Metadata
Metadata
Assignees
Labels
area/APIAPI objects and controllersAPI objects and controllersarea/networkingkind/cleanupCategorizes issue or PR as related to cleaning up code, process, or technical debt.Categorizes issue or PR as related to cleaning up code, process, or technical debt.kind/specDiscussion of how a feature should be exposed to customers.Discussion of how a feature should be exposed to customers.
In my opinion, the fact that today Route manages the deactivation of Revisions feels like a layering violation.
In more detail, activation is widely viewed as a feature of Revisions, but today the semantic boundary is that the Revision surfaces inactivity via
Active: False, Route(s) referring to inactive Revisions then wire in the activator, and after a grace period the Revision (really KPA) scales the Revision to zero.However, this means that when inactivate the Revision is
Ready: False, which is often a source of confusion, and presents another interesting race (during initial deployment) where the Revision must pass areadinessProbebefore it is scaled to zero or the Configuration may never witness its readiness.I believe that Revision (possibly through the KPA) should manage its own activation.
cc @vaikas-google @evankanderson @tcnghia @grantr @dprotaso for thoughts.