Skip to content

Commit 26aaea9

Browse files
committed
Updates to tests
Signed-off-by: Shmuel Kallner <[email protected]>
1 parent e6741b4 commit 26aaea9

File tree

17 files changed

+121
-80
lines changed

17 files changed

+121
-80
lines changed

pkg/epp/backend/metrics/fake.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import (
2222
"sync"
2323
"time"
2424

25-
corev1 "k8s.io/api/core/v1"
2625
"k8s.io/apimachinery/pkg/types"
2726
"sigs.k8s.io/controller-runtime/pkg/log"
2827

@@ -49,8 +48,8 @@ func (fpm *FakePodMetrics) GetMetrics() *MetricsState {
4948
return fpm.Metrics
5049
}
5150

52-
func (fpm *FakePodMetrics) UpdatePod(pod *corev1.Pod) {
53-
fpm.Pod = toInternalPod(pod)
51+
func (fpm *FakePodMetrics) UpdatePod(pod *datalayer.PodInfo) {
52+
fpm.Pod = pod
5453
}
5554

5655
func (*FakePodMetrics) Put(string, datalayer.Cloneable) {}
@@ -69,7 +68,7 @@ type FakePodMetricsClient struct {
6968
Res map[types.NamespacedName]*MetricsState
7069
}
7170

72-
func (f *FakePodMetricsClient) FetchMetrics(ctx context.Context, pod *backend.Pod, existing *MetricsState, _ int32) (*MetricsState, error) {
71+
func (f *FakePodMetricsClient) FetchMetrics(ctx context.Context, pod *backend.Pod, existing *MetricsState) (*MetricsState, error) {
7372
f.errMu.RLock()
7473
err, ok := f.Err[pod.NamespacedName]
7574
f.errMu.RUnlock()

pkg/epp/backend/metrics/metrics_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,9 @@ func TestPromToPodMetrics(t *testing.T) {
489489
func TestFetchMetrics(t *testing.T) {
490490
ctx := logutil.NewTestLoggerIntoContext(context.Background())
491491
pod := &backend.Pod{
492-
Address: "127.0.0.1",
492+
Address: "127.0.0.1",
493+
Port: 9999,
494+
MetricsPort: 9999,
493495
NamespacedName: types.NamespacedName{
494496
Namespace: "test",
495497
Name: "pod",
@@ -499,12 +501,11 @@ func TestFetchMetrics(t *testing.T) {
499501
// No MetricMapping needed for this basic test
500502
p := &PodMetricsClientImpl{
501503
ModelServerMetricsScheme: "http",
502-
ModelServerMetricsPort: 9999,
503504
ModelServerMetricsPath: "/metrics",
504505
Client: http.DefaultClient,
505506
}
506507

507-
_, err := p.FetchMetrics(ctx, pod, existing, 9999) // Use a port that's unlikely to be in use
508+
_, err := p.FetchMetrics(ctx, pod, existing) // Use a port that's unlikely to be in use
508509
if err == nil {
509510
t.Errorf("FetchMetrics() expected error, got nil")
510511
}

pkg/epp/backend/metrics/pod_metrics_test.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,19 +23,19 @@ import (
2323
"github.com/google/go-cmp/cmp"
2424
"github.com/google/go-cmp/cmp/cmpopts"
2525
"github.com/stretchr/testify/assert"
26-
corev1 "k8s.io/api/core/v1"
27-
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2826
"k8s.io/apimachinery/pkg/types"
2927

3028
v1 "sigs.k8s.io/gateway-api-inference-extension/api/v1"
29+
"sigs.k8s.io/gateway-api-inference-extension/pkg/epp/datalayer"
3130
)
3231

3332
var (
34-
pod1 = &corev1.Pod{
35-
ObjectMeta: metav1.ObjectMeta{
36-
Name: "pod1",
33+
pod1Info = &datalayer.PodInfo{
34+
NamespacedName: types.NamespacedName{
35+
Name: "pod1-rank-0",
3736
Namespace: "default",
3837
},
38+
PodName: "pod1",
3939
}
4040
initial = &MetricsState{
4141
WaitingQueueSize: 0,
@@ -65,12 +65,11 @@ func TestMetricsRefresh(t *testing.T) {
6565
pmf := NewPodMetricsFactory(pmc, time.Millisecond)
6666

6767
// The refresher is initialized with empty metrics.
68-
pm := pmf.NewEndpoint(ctx, pod1, &fakeDataStore{})
68+
pm := pmf.NewEndpoint(ctx, pod1Info, &fakeDataStore{})
6969

70-
namespacedName := types.NamespacedName{Name: pod1.Name, Namespace: pod1.Namespace}
7170
// Use SetRes to simulate an update of metrics from the pod.
7271
// Verify that the metrics are updated.
73-
pmc.SetRes(map[types.NamespacedName]*MetricsState{namespacedName: initial})
72+
pmc.SetRes(map[types.NamespacedName]*MetricsState{pod1Info.NamespacedName: initial})
7473
condition := func(collect *assert.CollectT) {
7574
assert.True(collect, cmp.Equal(pm.GetMetrics(), initial, cmpopts.IgnoreFields(MetricsState{}, "UpdateTime")))
7675
}
@@ -80,7 +79,7 @@ func TestMetricsRefresh(t *testing.T) {
8079
// new update.
8180
pmf.ReleaseEndpoint(pm)
8281
time.Sleep(pmf.refreshMetricsInterval * 2 /* small buffer for robustness */)
83-
pmc.SetRes(map[types.NamespacedName]*MetricsState{namespacedName: updated})
82+
pmc.SetRes(map[types.NamespacedName]*MetricsState{pod1Info.NamespacedName: updated})
8483
// Still expect the same condition (no metrics update).
8584
assert.EventuallyWithT(t, condition, time.Second, time.Millisecond)
8685
}

pkg/epp/controller/inferenceobjective_reconciler_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ func TestInferenceObjectiveReconciler(t *testing.T) {
160160
WithObjects(initObjs...).
161161
Build()
162162
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
163-
ds := datastore.NewDatastore(t.Context(), pmf)
163+
ds := datastore.NewDatastore(t.Context(), pmf, 0)
164164
for _, m := range test.objectivessInStore {
165165
ds.ObjectiveSet(m)
166166
}

pkg/epp/controller/inferencepool_reconciler_test.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -113,14 +113,14 @@ func TestInferencePoolReconciler(t *testing.T) {
113113
ctx := context.Background()
114114

115115
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
116-
datastore := datastore.NewDatastore(ctx, pmf)
117-
inferencePoolReconciler := &InferencePoolReconciler{Reader: fakeClient, Datastore: datastore, PoolGKNN: gknn}
116+
ds := datastore.NewDatastore(ctx, pmf, 0)
117+
inferencePoolReconciler := &InferencePoolReconciler{Reader: fakeClient, Datastore: ds, PoolGKNN: gknn}
118118

119119
// Step 1: Inception, only ready pods matching pool1 are added to the store.
120120
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
121121
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
122122
}
123-
if diff := diffStore(datastore, diffStoreParams{wantPool: pool1, wantPods: []string{"pod1", "pod2"}}); diff != "" {
123+
if diff := diffStore(ds, diffStoreParams{wantPool: pool1, wantPods: []string{"pod1-rank-0", "pod2-rank-0"}}); diff != "" {
124124
t.Errorf("Unexpected diff (+got/-want): %s", diff)
125125
}
126126

@@ -138,7 +138,7 @@ func TestInferencePoolReconciler(t *testing.T) {
138138
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
139139
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
140140
}
141-
if diff := diffStore(datastore, diffStoreParams{wantPool: newPool1, wantPods: []string{"pod5"}}); diff != "" {
141+
if diff := diffStore(ds, diffStoreParams{wantPool: newPool1, wantPods: []string{"pod5-rank-0"}}); diff != "" {
142142
t.Errorf("Unexpected diff (+got/-want): %s", diff)
143143
}
144144

@@ -153,7 +153,7 @@ func TestInferencePoolReconciler(t *testing.T) {
153153
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
154154
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
155155
}
156-
if diff := diffStore(datastore, diffStoreParams{wantPool: newPool1, wantPods: []string{"pod5"}}); diff != "" {
156+
if diff := diffStore(ds, diffStoreParams{wantPool: newPool1, wantPods: []string{"pod5-rank-0"}}); diff != "" {
157157
t.Errorf("Unexpected diff (+got/-want): %s", diff)
158158
}
159159

@@ -167,7 +167,7 @@ func TestInferencePoolReconciler(t *testing.T) {
167167
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
168168
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
169169
}
170-
if diff := diffStore(datastore, diffStoreParams{wantPods: []string{}}); diff != "" {
170+
if diff := diffStore(ds, diffStoreParams{wantPods: []string{}}); diff != "" {
171171
t.Errorf("Unexpected diff (+got/-want): %s", diff)
172172
}
173173
}
@@ -258,14 +258,14 @@ func TestXInferencePoolReconciler(t *testing.T) {
258258
ctx := context.Background()
259259

260260
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
261-
datastore := datastore.NewDatastore(ctx, pmf)
262-
inferencePoolReconciler := &InferencePoolReconciler{Reader: fakeClient, Datastore: datastore, PoolGKNN: gknn}
261+
ds := datastore.NewDatastore(ctx, pmf, 0)
262+
inferencePoolReconciler := &InferencePoolReconciler{Reader: fakeClient, Datastore: ds, PoolGKNN: gknn}
263263

264264
// Step 1: Inception, only ready pods matching pool1 are added to the store.
265265
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
266266
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
267267
}
268-
if diff := xDiffStore(t, datastore, xDiffStoreParams{wantPool: pool1, wantPods: []string{"pod1", "pod2"}}); diff != "" {
268+
if diff := xDiffStore(t, ds, xDiffStoreParams{wantPool: pool1, wantPods: []string{"pod1-rank-0", "pod2-rank-0"}}); diff != "" {
269269
t.Errorf("Unexpected diff (+got/-want): %s", diff)
270270
}
271271

@@ -281,7 +281,7 @@ func TestXInferencePoolReconciler(t *testing.T) {
281281
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
282282
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
283283
}
284-
if diff := xDiffStore(t, datastore, xDiffStoreParams{wantPool: newPool1, wantPods: []string{"pod5"}}); diff != "" {
284+
if diff := xDiffStore(t, ds, xDiffStoreParams{wantPool: newPool1, wantPods: []string{"pod5-rank-0"}}); diff != "" {
285285
t.Errorf("Unexpected diff (+got/-want): %s", diff)
286286
}
287287

@@ -296,7 +296,7 @@ func TestXInferencePoolReconciler(t *testing.T) {
296296
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
297297
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
298298
}
299-
if diff := xDiffStore(t, datastore, xDiffStoreParams{wantPool: newPool1, wantPods: []string{"pod5"}}); diff != "" {
299+
if diff := xDiffStore(t, ds, xDiffStoreParams{wantPool: newPool1, wantPods: []string{"pod5-rank-0"}}); diff != "" {
300300
t.Errorf("Unexpected diff (+got/-want): %s", diff)
301301
}
302302

@@ -310,7 +310,7 @@ func TestXInferencePoolReconciler(t *testing.T) {
310310
if _, err := inferencePoolReconciler.Reconcile(ctx, req); err != nil {
311311
t.Errorf("Unexpected InferencePool reconcile error: %v", err)
312312
}
313-
if diff := xDiffStore(t, datastore, xDiffStoreParams{wantPods: []string{}}); diff != "" {
313+
if diff := xDiffStore(t, ds, xDiffStoreParams{wantPods: []string{}}); diff != "" {
314314
t.Errorf("Unexpected diff (+got/-want): %s", diff)
315315
}
316316
}

pkg/epp/controller/pod_reconciler_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ func TestPodReconciler(t *testing.T) {
196196
Build()
197197

198198
// Configure the initial state of the datastore.
199-
store := datastore.NewDatastore(t.Context(), pmf)
199+
store := datastore.NewDatastore(t.Context(), pmf, 0)
200200
_ = store.PoolSet(t.Context(), fakeClient, test.pool)
201201
for _, pod := range test.existingPods {
202202
store.PodUpdateOrAddIfNotExist(pod)
@@ -213,7 +213,7 @@ func TestPodReconciler(t *testing.T) {
213213

214214
var gotPods []*corev1.Pod
215215
for _, pm := range store.PodList(backendmetrics.AllPodsPredicate) {
216-
pod := &corev1.Pod{ObjectMeta: metav1.ObjectMeta{Name: pm.GetPod().NamespacedName.Name, Namespace: pm.GetPod().NamespacedName.Namespace}, Status: corev1.PodStatus{PodIP: pm.GetPod().Address}}
216+
pod := &corev1.Pod{ObjectMeta: metav1.ObjectMeta{Name: pm.GetPod().PodName, Namespace: pm.GetPod().NamespacedName.Namespace}, Status: corev1.PodStatus{PodIP: pm.GetPod().GetIPAddress()}}
217217
gotPods = append(gotPods, pod)
218218
}
219219
if !cmp.Equal(gotPods, test.wantPods, cmpopts.SortSlices(func(a, b *corev1.Pod) bool { return a.Name < b.Name })) {

pkg/epp/datalayer/collector_test.go

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,7 @@ import (
2424

2525
"github.com/stretchr/testify/assert"
2626
"github.com/stretchr/testify/require"
27-
corev1 "k8s.io/api/core/v1"
28-
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
27+
"k8s.io/apimachinery/pkg/types"
2928

3029
"sigs.k8s.io/gateway-api-inference-extension/pkg/epp/datalayer/mocks"
3130
)
@@ -45,14 +44,12 @@ func (d *DummySource) Collect(ctx context.Context, ep Endpoint) error {
4544

4645
func defaultEndpoint() Endpoint {
4746
ms := NewEndpoint()
48-
pod := &corev1.Pod{
49-
ObjectMeta: metav1.ObjectMeta{
47+
pod := &PodInfo{
48+
NamespacedName: types.NamespacedName{
5049
Name: "pod-name",
5150
Namespace: "default",
5251
},
53-
Status: corev1.PodStatus{
54-
PodIP: "1.2.3.4",
55-
},
52+
Address: "1.2.3.4:5678",
5653
}
5754
ms.UpdatePod(pod)
5855
return ms

pkg/epp/datalayer/podinfo_test.go

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,13 +55,6 @@ var (
5555
}
5656
)
5757

58-
func TestToPodInfo(t *testing.T) {
59-
podinfo := ToPodInfo(pod)
60-
if diff := cmp.Diff(expected, podinfo); diff != "" {
61-
t.Errorf("Unexpected output (-want +got): %v", diff)
62-
}
63-
}
64-
6558
func TestPodInfoClone(t *testing.T) {
6659
clone := expected.Clone()
6760
assert.NotSame(t, expected, clone)
@@ -74,7 +67,17 @@ func TestPodInfoClone(t *testing.T) {
7467
}
7568

7669
func TestPodInfoString(t *testing.T) {
77-
podinfo := ToPodInfo(pod)
70+
podinfo := PodInfo{
71+
NamespacedName: types.NamespacedName{
72+
Name: pod.Name,
73+
Namespace: pod.Namespace,
74+
},
75+
PodName: pod.Name,
76+
Address: pod.Status.PodIP,
77+
Port: 0,
78+
MetricsPort: 0,
79+
Labels: labels,
80+
}
7881

7982
s := podinfo.String()
8083
assert.Contains(t, s, name)

pkg/epp/datastore/datastore_test.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -83,21 +83,21 @@ func TestPool(t *testing.T) {
8383
WithScheme(scheme).
8484
Build()
8585
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
86-
datastore := NewDatastore(context.Background(), pmf)
87-
_ = datastore.PoolSet(context.Background(), fakeClient, tt.inferencePool)
88-
gotPool, gotErr := datastore.PoolGet()
86+
ds := NewDatastore(context.Background(), pmf, 0)
87+
_ = ds.PoolSet(context.Background(), fakeClient, tt.inferencePool)
88+
gotPool, gotErr := ds.PoolGet()
8989
if diff := cmp.Diff(tt.wantErr, gotErr, cmpopts.EquateErrors()); diff != "" {
9090
t.Errorf("Unexpected error diff (+got/-want): %s", diff)
9191
}
9292
if diff := cmp.Diff(tt.wantPool, gotPool); diff != "" {
9393
t.Errorf("Unexpected pool diff (+got/-want): %s", diff)
9494
}
95-
gotSynced := datastore.PoolHasSynced()
95+
gotSynced := ds.PoolHasSynced()
9696
if diff := cmp.Diff(tt.wantSynced, gotSynced); diff != "" {
9797
t.Errorf("Unexpected synced diff (+got/-want): %s", diff)
9898
}
9999
if tt.labels != nil {
100-
gotLabelsMatch := datastore.PoolLabelsMatch(tt.labels)
100+
gotLabelsMatch := ds.PoolLabelsMatch(tt.labels)
101101
if diff := cmp.Diff(tt.wantLabelsMatch, gotLabelsMatch); diff != "" {
102102
t.Errorf("Unexpected labels match diff (+got/-want): %s", diff)
103103
}
@@ -190,7 +190,7 @@ func TestObjective(t *testing.T) {
190190
for _, test := range tests {
191191
t.Run(test.name, func(t *testing.T) {
192192
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
193-
ds := NewDatastore(t.Context(), pmf)
193+
ds := NewDatastore(t.Context(), pmf, 0)
194194
for _, m := range test.existingModels {
195195
ds.ObjectiveSet(m)
196196
}
@@ -241,8 +241,8 @@ var (
241241
WaitingModels: map[string]int{},
242242
}
243243

244-
pod1NamespacedName = types.NamespacedName{Name: pod1.Name, Namespace: pod1.Namespace}
245-
pod2NamespacedName = types.NamespacedName{Name: pod2.Name, Namespace: pod2.Namespace}
244+
pod1NamespacedName = types.NamespacedName{Name: pod1.Name + "-rank-0", Namespace: pod1.Namespace}
245+
pod2NamespacedName = types.NamespacedName{Name: pod2.Name + "-rank-0", Namespace: pod2.Namespace}
246246
inferencePool = &v1.InferencePool{
247247
Spec: v1.InferencePoolSpec{
248248
TargetPorts: []v1.Port{{Number: v1.PortNumber(int32(8000))}},
@@ -315,7 +315,7 @@ func TestMetrics(t *testing.T) {
315315
WithScheme(scheme).
316316
Build()
317317
pmf := backendmetrics.NewPodMetricsFactory(test.pmc, time.Millisecond)
318-
ds := NewDatastore(ctx, pmf)
318+
ds := NewDatastore(ctx, pmf, 0)
319319
_ = ds.PoolSet(ctx, fakeClient, inferencePool)
320320
for _, pod := range test.storePods {
321321
ds.PodUpdateOrAddIfNotExist(pod)
@@ -412,15 +412,15 @@ func TestPods(t *testing.T) {
412412
t.Run(test.name, func(t *testing.T) {
413413
ctx := context.Background()
414414
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
415-
ds := NewDatastore(t.Context(), pmf)
415+
ds := NewDatastore(t.Context(), pmf, 0)
416416
for _, pod := range test.existingPods {
417417
ds.PodUpdateOrAddIfNotExist(pod)
418418
}
419419

420420
test.op(ctx, ds)
421421
var gotPods []*corev1.Pod
422422
for _, pm := range ds.PodList(backendmetrics.AllPodsPredicate) {
423-
pod := &corev1.Pod{ObjectMeta: metav1.ObjectMeta{Name: pm.GetPod().NamespacedName.Name, Namespace: pm.GetPod().NamespacedName.Namespace}, Status: corev1.PodStatus{PodIP: pm.GetPod().Address}}
423+
pod := &corev1.Pod{ObjectMeta: metav1.ObjectMeta{Name: pm.GetPod().PodName, Namespace: pm.GetPod().NamespacedName.Namespace}, Status: corev1.PodStatus{PodIP: pm.GetPod().GetIPAddress()}}
424424
gotPods = append(gotPods, pod)
425425
}
426426
if !cmp.Equal(gotPods, test.wantPods, cmpopts.SortSlices(func(a, b *corev1.Pod) bool { return a.Name < b.Name })) {

pkg/epp/metrics/collectors/inference_pool_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ var (
4040
Name: "pod1",
4141
},
4242
}
43-
pod1NamespacedName = types.NamespacedName{Name: pod1.Name, Namespace: pod1.Namespace}
43+
pod1NamespacedName = types.NamespacedName{Name: pod1.Name + "-rank-0", Namespace: pod1.Namespace}
4444
pod1Metrics = &backendmetrics.MetricsState{
4545
WaitingQueueSize: 100,
4646
KVCacheUsagePercent: 0.2,
@@ -50,10 +50,10 @@ var (
5050

5151
func TestNoMetricsCollected(t *testing.T) {
5252
pmf := backendmetrics.NewPodMetricsFactory(&backendmetrics.FakePodMetricsClient{}, time.Second)
53-
datastore := datastore.NewDatastore(context.Background(), pmf)
53+
ds := datastore.NewDatastore(context.Background(), pmf, 0)
5454

5555
collector := &inferencePoolMetricsCollector{
56-
ds: datastore,
56+
ds: ds,
5757
}
5858

5959
if err := testutil.CollectAndCompare(collector, strings.NewReader(""), ""); err != nil {
@@ -68,7 +68,7 @@ func TestMetricsCollected(t *testing.T) {
6868
},
6969
}
7070
pmf := backendmetrics.NewPodMetricsFactory(pmc, time.Millisecond)
71-
ds := datastore.NewDatastore(context.Background(), pmf)
71+
ds := datastore.NewDatastore(context.Background(), pmf, 0)
7272

7373
scheme := runtime.NewScheme()
7474
fakeClient := fake.NewClientBuilder().
@@ -94,7 +94,7 @@ func TestMetricsCollected(t *testing.T) {
9494
err := testutil.CollectAndCompare(collector, strings.NewReader(`
9595
# HELP inference_pool_per_pod_queue_size [ALPHA] The total number of requests pending in the model server queue for each underlying pod.
9696
# TYPE inference_pool_per_pod_queue_size gauge
97-
inference_pool_per_pod_queue_size{model_server_pod="pod1",name="test-pool"} 100
97+
inference_pool_per_pod_queue_size{model_server_pod="pod1-rank-0",name="test-pool"} 100
9898
`), "inference_pool_per_pod_queue_size")
9999
if err != nil {
100100
t.Fatal(err)

0 commit comments

Comments
 (0)