This is an automated email from the ASF dual-hosted git repository.
jshao pushed a commit to branch branch-1.2
in repository https://gitbox.apache.org/repos/asf/gravitino.git
The following commit(s) were added to refs/heads/branch-1.2 by this push:
new c121cd192e [Cherry-pick to branch-1.2] [#10700] test: Harden retention
count assertions in TestFunctionMetaService and TestFilesetMetaService (#10701)
(#10756)
c121cd192e is described below
commit c121cd192e2ee25b9a7a2f5c53fce3e790d7cfc3
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon Apr 13 15:45:49 2026 +0800
[Cherry-pick to branch-1.2] [#10700] test: Harden retention count
assertions in TestFunctionMetaService and TestFilesetMetaService (#10701)
(#10756)
**Cherry-pick Information:**
- Original commit: d4893e5f57d99525b2608fc187fd6c920fdfe011
- Target branch: `branch-1.2`
- Status: ✅ Clean cherry-pick (no conflicts)
Co-authored-by: mchades <[email protected]>
Co-authored-by: Copilot <[email protected]>
---
.../relational/service/TestFilesetMetaService.java | 24 +++++++++++++----
.../service/TestFunctionMetaService.java | 30 +++++++++++++++++-----
2 files changed, 43 insertions(+), 11 deletions(-)
diff --git
a/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFilesetMetaService.java
b/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFilesetMetaService.java
index c292418c1e..34c62659ec 100644
---
a/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFilesetMetaService.java
+++
b/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFilesetMetaService.java
@@ -335,12 +335,16 @@ public class TestFilesetMetaService extends
TestJDBCBackend {
auditInfo1,
"/tmp1");
});
+ Map<Integer, Long> versionDeletedMap =
listFilesetVersions(filesetEntity.id());
+ assertEquals(2, versionDeletedMap.size());
+ assertVersionActive(versionDeletedMap, 1);
+ assertVersionActive(versionDeletedMap, 2);
+
FilesetMetaService.getInstance().deleteFilesetVersionsByRetentionCount(1L,
100);
- List<Pair<Integer, String>> versionInfos =
listFilesetInvalidVersions(filesetEntity.id());
- // version 1 should be softly deleted
- Assertions.assertEquals(1, versionInfos.size());
- Assertions.assertEquals(1, versionInfos.get(0).getLeft());
- Assertions.assertEquals(LOCATION_NAME_UNKNOWN,
versionInfos.get(0).getRight());
+ versionDeletedMap = listFilesetVersions(filesetEntity.id());
+ assertEquals(2, versionDeletedMap.size());
+ assertVersionSoftDeleted(versionDeletedMap, 1);
+ assertVersionActive(versionDeletedMap, 2);
}
private List<Pair<Integer, String>> listFilesetInvalidVersions(Long
filesetId) {
@@ -363,6 +367,16 @@ public class TestFilesetMetaService extends
TestJDBCBackend {
return deletedVersions;
}
+ private void assertVersionActive(Map<Integer, Long> versionDeletedMap, int
version) {
+ assertTrue(versionDeletedMap.containsKey(version));
+ assertEquals(0L, versionDeletedMap.get(version));
+ }
+
+ private void assertVersionSoftDeleted(Map<Integer, Long> versionDeletedMap,
int version) {
+ assertTrue(versionDeletedMap.containsKey(version));
+ assertTrue(versionDeletedMap.get(version) > 0L);
+ }
+
private FilesetEntity createFilesetEntity(
Long id, Namespace namespace, String name, AuditInfo auditInfo, String
location) {
return FilesetEntity.builder()
diff --git
a/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFunctionMetaService.java
b/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFunctionMetaService.java
index a068b64550..6d87b04408 100644
---
a/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFunctionMetaService.java
+++
b/core/src/test/java/org/apache/gravitino/storage/relational/service/TestFunctionMetaService.java
@@ -398,17 +398,25 @@ public class TestFunctionMetaService extends
TestJDBCBackend {
FunctionMetaService.getInstance().updateFunction(functionIdent, e ->
updatedFunction);
}
- // Verify all 5 versions exist
- assertEquals(5, listFunctionVersions(function.id()).size());
+ // Verify all 5 versions are active before retention cleanup
+ Map<Integer, Long> versionDeletedMap = listFunctionVersions(function.id());
+ assertEquals(5, versionDeletedMap.size());
+ for (int version = 1; version <= 5; version++) {
+ assertVersionActive(versionDeletedMap, version);
+ }
// Soft delete versions by retention count (keep only 2)
FunctionMetaService.getInstance().deleteFunctionVersionsByRetentionCount(2L,
100);
- // Verify 3 versions are soft deleted
- Map<Integer, Long> versionDeletedMap = listFunctionVersions(function.id());
+ // Verify versions 1-3 are soft deleted and versions 4-5 remain active
+ versionDeletedMap = listFunctionVersions(function.id());
assertEquals(5, versionDeletedMap.size());
- assertEquals(2, versionDeletedMap.values().stream().filter(value -> value
== 0L).count());
- assertEquals(3, versionDeletedMap.values().stream().filter(value -> value
!= 0L).count());
+ for (int version = 1; version <= 3; version++) {
+ assertVersionSoftDeleted(versionDeletedMap, version);
+ }
+ for (int version = 4; version <= 5; version++) {
+ assertVersionActive(versionDeletedMap, version);
+ }
}
@TestTemplate
@@ -496,4 +504,14 @@ public class TestFunctionMetaService extends
TestJDBCBackend {
}
return versionDeletedTime;
}
+
+ private void assertVersionActive(Map<Integer, Long> versionDeletedMap, int
version) {
+ assertTrue(versionDeletedMap.containsKey(version));
+ assertEquals(0L, versionDeletedMap.get(version));
+ }
+
+ private void assertVersionSoftDeleted(Map<Integer, Long> versionDeletedMap,
int version) {
+ assertTrue(versionDeletedMap.containsKey(version));
+ assertTrue(versionDeletedMap.get(version) > 0L);
+ }
}