Skip to content

Commit c7c99f6

Browse files
committed
Fix tests to mock partitionGroup
1 parent 17a44b9 commit c7c99f6

File tree

2 files changed

+38
-5
lines changed

2 files changed

+38
-5
lines changed

pkg/compactor/compactor_paritioning_test.go

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1299,7 +1299,24 @@ func TestPartitionCompactor_ShouldCompactOnlyShardsOwnedByTheInstanceOnShardingE
12991299

13001300
// Get all of the unique group hashes so that they can be used to ensure all groups were compacted
13011301
groupHashes[groupHash]++
1302-
bucketClient.MockGet(userID+"/partitioned-groups/"+fmt.Sprint(groupHash)+".json", "", nil)
1302+
1303+
// Create mock partitioned group info for the new validation check
1304+
partitionedGroupInfo := PartitionedGroupInfo{
1305+
PartitionedGroupID: groupHash,
1306+
PartitionCount: 1,
1307+
Partitions: []Partition{
1308+
{
1309+
PartitionID: 0,
1310+
Blocks: []ulid.ULID{ulid.MustParse(blockID)},
1311+
},
1312+
},
1313+
RangeStart: blockTimes["startTime"],
1314+
RangeEnd: blockTimes["endTime"],
1315+
CreationTime: time.Now().Unix(),
1316+
Version: PartitionedGroupInfoVersion1,
1317+
}
1318+
partitionedGroupInfoContent, _ := json.Marshal(partitionedGroupInfo)
1319+
bucketClient.MockGet(userID+"/partitioned-groups/"+fmt.Sprint(groupHash)+".json", string(partitionedGroupInfoContent), nil)
13031320
bucketClient.MockUpload(userID+"/partitioned-groups/"+fmt.Sprint(groupHash)+".json", nil)
13041321
}
13051322

pkg/compactor/partition_compaction_planner_test.go

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -289,9 +289,24 @@ func TestPartitionCompactionPlanner_Plan(t *testing.T) {
289289
Version: PartitionVisitMarkerVersion1,
290290
}
291291
visitMarkerFileContent, _ := json.Marshal(visitMarker)
292+
// Mock partition group info for race condition fix
293+
partitionedGroupInfo := PartitionedGroupInfo{
294+
PartitionedGroupID: partitionedGroupID,
295+
PartitionCount: 1,
296+
Partitions: []Partition{
297+
{PartitionID: partitionID, Blocks: []ulid.ULID{}},
298+
},
299+
RangeStart: 0,
300+
RangeEnd: 2 * time.Hour.Milliseconds(),
301+
CreationTime: time.Now().Unix(),
302+
Version: PartitionedGroupInfoVersion1,
303+
}
304+
partitionedGroupContent, _ := json.Marshal(partitionedGroupInfo)
305+
partitionedGroupFile := GetPartitionedGroupFile(partitionedGroupID)
306+
292307
bkt.MockGet(visitMarkerFile, string(visitMarkerFileContent), nil)
308+
bkt.MockGet(partitionedGroupFile, string(partitionedGroupContent), nil)
293309
bkt.MockUpload(mock.Anything, nil)
294-
bkt.MockGet(mock.Anything, "", nil)
295310

296311
registerer := prometheus.NewPedanticRegistry()
297312

@@ -316,9 +331,10 @@ func TestPartitionCompactionPlanner_Plan(t *testing.T) {
316331
)
317332
actual, err := p.Plan(context.Background(), testData.blocks, nil, &cortextsdb.CortexMetaExtensions{
318333
PartitionInfo: &cortextsdb.PartitionInfo{
319-
PartitionCount: 1,
320-
PartitionID: partitionID,
321-
PartitionedGroupID: partitionedGroupID,
334+
PartitionCount: 1,
335+
PartitionID: partitionID,
336+
PartitionedGroupID: partitionedGroupID,
337+
PartitionedGroupCreationTime: partitionedGroupInfo.CreationTime,
322338
},
323339
})
324340

0 commit comments

Comments
 (0)