Skip to content

Commit a0471e0

Browse files
Update: Change ErrorUtilizationPenalty type from float to integer across Gateway CRDs, configuration files, and related tests. Adjust documentation to reflect percentage-based representation.
Signed-off-by: anurag.ag <[email protected]>
1 parent c7ecca3 commit a0471e0

17 files changed

+302
-71
lines changed

api/v1alpha1/loadbalancer_types.go

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -161,11 +161,21 @@ type ClientSideWeightedRoundRobin struct {
161161
// +optional
162162
WeightUpdatePeriod *gwapiv1.Duration `json:"weightUpdatePeriod,omitempty"`
163163

164-
// The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
165-
// Must be non-negative. Default is 1.0.
164+
// ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
165+
// This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
166+
//
167+
// For example:
168+
// - 100 => 1.0x
169+
// - 120 => 1.2x
170+
// - 200 => 2.0x
171+
//
172+
// Note: In the internal IR/XDS configuration this value is converted back to a
173+
// floating point multiplier (value / 100.0).
174+
//
175+
// Must be non-negative.
166176
// +kubebuilder:validation:Minimum=0
167177
// +optional
168-
ErrorUtilizationPenalty *float32 `json:"errorUtilizationPenalty,omitempty"`
178+
ErrorUtilizationPenalty *uint32 `json:"errorUtilizationPenalty,omitempty"`
169179

170180
// Metric names used to compute utilization if application_utilization is not set.
171181
// For map fields in ORCA proto, use the form "<map_field>.<key>", e.g., "named_metrics.foo".

api/v1alpha1/zz_generated.deepcopy.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

charts/gateway-crds-helm/templates/generated/gateway.envoyproxy.io_backendtrafficpolicies.yaml

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -690,10 +690,21 @@ spec:
690690
type: string
691691
errorUtilizationPenalty:
692692
description: |-
693-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
694-
Must be non-negative. Default is 1.0.
693+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
694+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
695+
696+
For example:
697+
- 100 => 1.0x
698+
- 120 => 1.2x
699+
- 200 => 2.0x
700+
701+
Note: In the internal IR/XDS configuration this value is converted back to a
702+
floating point multiplier (value / 100.0).
703+
704+
Must be non-negative.
705+
format: int32
695706
minimum: 0
696-
type: number
707+
type: integer
697708
metricNamesForComputingUtilization:
698709
description: |-
699710
Metric names used to compute utilization if application_utilization is not set.

charts/gateway-crds-helm/templates/generated/gateway.envoyproxy.io_envoyextensionpolicies.yaml

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -729,10 +729,21 @@ spec:
729729
type: string
730730
errorUtilizationPenalty:
731731
description: |-
732-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
733-
Must be non-negative. Default is 1.0.
732+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
733+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
734+
735+
For example:
736+
- 100 => 1.0x
737+
- 120 => 1.2x
738+
- 200 => 2.0x
739+
740+
Note: In the internal IR/XDS configuration this value is converted back to a
741+
floating point multiplier (value / 100.0).
742+
743+
Must be non-negative.
744+
format: int32
734745
minimum: 0
735-
type: number
746+
type: integer
736747
metricNamesForComputingUtilization:
737748
description: |-
738749
Metric names used to compute utilization if application_utilization is not set.

charts/gateway-crds-helm/templates/generated/gateway.envoyproxy.io_envoyproxies.yaml

Lines changed: 56 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11722,10 +11722,21 @@ spec:
1172211722
type: string
1172311723
errorUtilizationPenalty:
1172411724
description: |-
11725-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
11726-
Must be non-negative. Default is 1.0.
11725+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
11726+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
11727+
11728+
For example:
11729+
- 100 => 1.0x
11730+
- 120 => 1.2x
11731+
- 200 => 2.0x
11732+
11733+
Note: In the internal IR/XDS configuration this value is converted back to a
11734+
floating point multiplier (value / 100.0).
11735+
11736+
Must be non-negative.
11737+
format: int32
1172711738
minimum: 0
11728-
type: number
11739+
type: integer
1172911740
metricNamesForComputingUtilization:
1173011741
description: |-
1173111742
Metric names used to compute utilization if application_utilization is not set.
@@ -12979,10 +12990,21 @@ spec:
1297912990
type: string
1298012991
errorUtilizationPenalty:
1298112992
description: |-
12982-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
12983-
Must be non-negative. Default is 1.0.
12993+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
12994+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
12995+
12996+
For example:
12997+
- 100 => 1.0x
12998+
- 120 => 1.2x
12999+
- 200 => 2.0x
13000+
13001+
Note: In the internal IR/XDS configuration this value is converted back to a
13002+
floating point multiplier (value / 100.0).
13003+
13004+
Must be non-negative.
13005+
format: int32
1298413006
minimum: 0
12985-
type: number
13007+
type: integer
1298613008
metricNamesForComputingUtilization:
1298713009
description: |-
1298813010
Metric names used to compute utilization if application_utilization is not set.
@@ -14330,10 +14352,21 @@ spec:
1433014352
type: string
1433114353
errorUtilizationPenalty:
1433214354
description: |-
14333-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
14334-
Must be non-negative. Default is 1.0.
14355+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
14356+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
14357+
14358+
For example:
14359+
- 100 => 1.0x
14360+
- 120 => 1.2x
14361+
- 200 => 2.0x
14362+
14363+
Note: In the internal IR/XDS configuration this value is converted back to a
14364+
floating point multiplier (value / 100.0).
14365+
14366+
Must be non-negative.
14367+
format: int32
1433514368
minimum: 0
14336-
type: number
14369+
type: integer
1433714370
metricNamesForComputingUtilization:
1433814371
description: |-
1433914372
Metric names used to compute utilization if application_utilization is not set.
@@ -15586,10 +15619,21 @@ spec:
1558615619
type: string
1558715620
errorUtilizationPenalty:
1558815621
description: |-
15589-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
15590-
Must be non-negative. Default is 1.0.
15622+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
15623+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
15624+
15625+
For example:
15626+
- 100 => 1.0x
15627+
- 120 => 1.2x
15628+
- 200 => 2.0x
15629+
15630+
Note: In the internal IR/XDS configuration this value is converted back to a
15631+
floating point multiplier (value / 100.0).
15632+
15633+
Must be non-negative.
15634+
format: int32
1559115635
minimum: 0
15592-
type: number
15636+
type: integer
1559315637
metricNamesForComputingUtilization:
1559415638
description: |-
1559515639
Metric names used to compute utilization if application_utilization is not set.

charts/gateway-crds-helm/templates/generated/gateway.envoyproxy.io_securitypolicies.yaml

Lines changed: 56 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1247,10 +1247,21 @@ spec:
12471247
type: string
12481248
errorUtilizationPenalty:
12491249
description: |-
1250-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
1251-
Must be non-negative. Default is 1.0.
1250+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
1251+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
1252+
1253+
For example:
1254+
- 100 => 1.0x
1255+
- 120 => 1.2x
1256+
- 200 => 2.0x
1257+
1258+
Note: In the internal IR/XDS configuration this value is converted back to a
1259+
floating point multiplier (value / 100.0).
1260+
1261+
Must be non-negative.
1262+
format: int32
12521263
minimum: 0
1253-
type: number
1264+
type: integer
12541265
metricNamesForComputingUtilization:
12551266
description: |-
12561267
Metric names used to compute utilization if application_utilization is not set.
@@ -2388,10 +2399,21 @@ spec:
23882399
type: string
23892400
errorUtilizationPenalty:
23902401
description: |-
2391-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
2392-
Must be non-negative. Default is 1.0.
2402+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
2403+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
2404+
2405+
For example:
2406+
- 100 => 1.0x
2407+
- 120 => 1.2x
2408+
- 200 => 2.0x
2409+
2410+
Note: In the internal IR/XDS configuration this value is converted back to a
2411+
floating point multiplier (value / 100.0).
2412+
2413+
Must be non-negative.
2414+
format: int32
23932415
minimum: 0
2394-
type: number
2416+
type: integer
23952417
metricNamesForComputingUtilization:
23962418
description: |-
23972419
Metric names used to compute utilization if application_utilization is not set.
@@ -3740,10 +3762,21 @@ spec:
37403762
type: string
37413763
errorUtilizationPenalty:
37423764
description: |-
3743-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
3744-
Must be non-negative. Default is 1.0.
3765+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
3766+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
3767+
3768+
For example:
3769+
- 100 => 1.0x
3770+
- 120 => 1.2x
3771+
- 200 => 2.0x
3772+
3773+
Note: In the internal IR/XDS configuration this value is converted back to a
3774+
floating point multiplier (value / 100.0).
3775+
3776+
Must be non-negative.
3777+
format: int32
37453778
minimum: 0
3746-
type: number
3779+
type: integer
37473780
metricNamesForComputingUtilization:
37483781
description: |-
37493782
Metric names used to compute utilization if application_utilization is not set.
@@ -5152,10 +5185,21 @@ spec:
51525185
type: string
51535186
errorUtilizationPenalty:
51545187
description: |-
5155-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
5156-
Must be non-negative. Default is 1.0.
5188+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
5189+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
5190+
5191+
For example:
5192+
- 100 => 1.0x
5193+
- 120 => 1.2x
5194+
- 200 => 2.0x
5195+
5196+
Note: In the internal IR/XDS configuration this value is converted back to a
5197+
floating point multiplier (value / 100.0).
5198+
5199+
Must be non-negative.
5200+
format: int32
51575201
minimum: 0
5158-
type: number
5202+
type: integer
51595203
metricNamesForComputingUtilization:
51605204
description: |-
51615205
Metric names used to compute utilization if application_utilization is not set.

charts/gateway-helm/crds/generated/gateway.envoyproxy.io_backendtrafficpolicies.yaml

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -689,10 +689,21 @@ spec:
689689
type: string
690690
errorUtilizationPenalty:
691691
description: |-
692-
The multiplier used to adjust endpoint weights with the error rate calculated as eps/qps.
693-
Must be non-negative. Default is 1.0.
692+
ErrorUtilizationPenalty adjusts endpoint weights based on the error rate (eps/qps).
693+
This is expressed as a percentage-based integer where 100 represents 1.0, 150 represents 1.5, etc.
694+
695+
For example:
696+
- 100 => 1.0x
697+
- 120 => 1.2x
698+
- 200 => 2.0x
699+
700+
Note: In the internal IR/XDS configuration this value is converted back to a
701+
floating point multiplier (value / 100.0).
702+
703+
Must be non-negative.
704+
format: int32
694705
minimum: 0
695-
type: number
706+
type: integer
696707
metricNamesForComputingUtilization:
697708
description: |-
698709
Metric names used to compute utilization if application_utilization is not set.

0 commit comments

Comments
 (0)