From ebc52a0e1c6b82f1038d85bc781cc2efcd96f95f Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Tue, 26 Aug 2025 09:47:51 -0400 Subject: [PATCH] [#4003] Add clarification notes to ARM Add notes to classificatio process overview to clarifying timing of host reservation class assignment. --- doc/sphinx/arm/classify.rst | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/doc/sphinx/arm/classify.rst b/doc/sphinx/arm/classify.rst index 55b50bb3fb..7958aa9cee 100644 --- a/doc/sphinx/arm/classify.rst +++ b/doc/sphinx/arm/classify.rst @@ -111,6 +111,15 @@ The classification process is conducted in several steps: classes of the host reservation. If a reservation is not found, the packet is assigned to the ``UNKNOWN`` class. +.. note:: + + If there is a matching reservation from the selected subnet and that + subnet belongs to a shared-network, then the assignment of any classes + specified in the reservation is deferred until after lease allocation. + This is done to account for the possibility that the subnet selection may + change during lease allocation and that would negate and possibly replace + the original reservation match. + 9. Classes with matching expressions - directly, or indirectly using the ``KNOWN``/``UNKNOWN`` built-in classes and not marked for later evaluation ("on request") - are processed in the order they are defined @@ -137,6 +146,12 @@ The classification process is conducted in several steps: The ``lease4_select``, ``lease4_renew``, ``lease6_select``, ``lease6_renew``, and ``lease6_rebind`` callouts are called here. +.. note:: + + If there is a matching host reservation from the selected subnet and that + subnet belongs to a shared-network, then any classes specified in the + reservation are assigned. + 12. The ``evaluate-additional-classes`` lists (if any) are evaluated first for the pool, then the subnet, and the finally shared-network to which the assigned resources belong. Classes are evaluated in the order they appear -- 2.47.3