@@ -489,7 +489,10 @@ a hint to influence the `IPs` and `ipFamilies` of the ServiceImport object.
489489The exact mechanism for determining those fields is implementation-defined.
490490If `ipFamilies` is set on the ServiceImport object, it must not have duplicated
491491families (for instance `ipFamilies : [IPv4, IPv4]` is not valid) and the IPs
492- should eventually be in the same order as what is defined in `ipFamilies`.
492+ should eventually be in the same order as what is defined in `ipFamilies`. If
493+ conflicting `ipFamilies` are found among the constituent Services, implementations
494+ must raise an `IPFamilyConflict` condition when this might result in network
495+ traffic reaching only a subset of the backends depending on the IP protocol used.
493496
494497Also note that even in a dual stack cluster regular Services are by default SingleStack
495498which might default to IPv4 or IPv6 depending on the cluster configuration and there
@@ -1020,7 +1023,9 @@ The conflict will be resolved by assigning precedence based on each
10201023A derived service will be accessible with the clusterset IP at the ports
10211024dictated by child services. If the external properties of service ports for a
10221025set of exported services don’t match, the clusterset service will expose the
1023- union of service ports declared on its constituent services.
1026+ union of service ports declared on its constituent services and raise a `PortConflict`
1027+ conflict condition. In that case, network traffic must be directed only to endpoints
1028+ from constituent services that actually expose the targeted port.
10241029
10251030Like regular services, the resulting ports must respect two rules :
10261031- Have no duplicated names (including unnamed/empty name)
0 commit comments