fix(domains): deleted domain's assets and activity reappear on same-name recreate (1.13) (#28923) - #31879
fix(domains): deleted domain's assets and activity reappear on same-name recreate (1.13) (#28923)#31879sonika-shah wants to merge 2 commits into
6145 tests run, 0 skipped, 8 failed.
Annotations
github-actions / Test Report
EntityCsvTest.test_bulkEditInheritedDomainWithMismatchedDataProductFailsRule
org.openmetadata.schema.type.csv.CsvImportResult@5cf6ab97[dryRun=true,status=<null>,abortReason=<null>,numberOfRowsProcessed=1,numberOfRowsPassed=1,numberOfRowsFailed=0,importResultsCsv=<null>] ==> expected: <failure> but was: <null>
Raw output
org.opentest4j.AssertionFailedError: org.openmetadata.schema.type.csv.CsvImportResult@5cf6ab97[dryRun=true,status=<null>,abortReason=<null>,numberOfRowsProcessed=1,numberOfRowsPassed=1,numberOfRowsFailed=0,importResultsCsv=<null>] ==> expected: <failure> but was: <null>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1156)
at org.openmetadata.csv.EntityCsvTest.assertSummary(EntityCsvTest.java:132)
at org.openmetadata.csv.EntityCsvTest.test_bulkEditInheritedDomainWithMismatchedDataProductFailsRule(EntityCsvTest.java:2999)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
IndexMappingNestedFieldConsistencyTest.auditReportIndexFieldsMustBeMappedExplicitly
Audit report mapping gaps: [auditReport[en] missing status, auditReport[en] missing scope, auditReport[en] missing format, auditReport[en] missing requestedAt, auditReport[en] missing completedAt, auditReport[jp] missing status, auditReport[jp] missing scope, auditReport[jp] missing format, auditReport[jp] missing requestedAt, auditReport[jp] missing completedAt, auditReport[ru] missing status, auditReport[ru] missing scope, auditReport[ru] missing format, auditReport[ru] missing requestedAt, auditReport[ru] missing completedAt, auditReport[zh] missing status, auditReport[zh] missing scope, auditReport[zh] missing format, auditReport[zh] missing requestedAt, auditReport[zh] missing completedAt] ==> expected: <true> but was: <false>
Raw output
org.opentest4j.AssertionFailedError: Audit report mapping gaps: [auditReport[en] missing status, auditReport[en] missing scope, auditReport[en] missing format, auditReport[en] missing requestedAt, auditReport[en] missing completedAt, auditReport[jp] missing status, auditReport[jp] missing scope, auditReport[jp] missing format, auditReport[jp] missing requestedAt, auditReport[jp] missing completedAt, auditReport[ru] missing status, auditReport[ru] missing scope, auditReport[ru] missing format, auditReport[ru] missing requestedAt, auditReport[ru] missing completedAt, auditReport[zh] missing status, auditReport[zh] missing scope, auditReport[zh] missing format, auditReport[zh] missing requestedAt, auditReport[zh] missing completedAt] ==> expected: <true> but was: <false>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:36)
at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:214)
at org.openmetadata.service.search.IndexMappingNestedFieldConsistencyTest.auditReportIndexFieldsMustBeMappedExplicitly(IndexMappingNestedFieldConsistencyTest.java:207)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
IndexMappingNestedFieldConsistencyTest.aiGovernanceProjectionFieldsMustBeMappedExplicitly
AI governance projection mapping gaps: [aiApplication[en] missing aiGovernance, aiApplication[jp] missing aiGovernance, aiApplication[ru] missing aiGovernance, aiApplication[zh] missing aiGovernance, llmModel[en] missing aiGovernance, llmModel[jp] missing aiGovernance, llmModel[ru] missing aiGovernance, llmModel[zh] missing aiGovernance, mcpServer[en] missing aiGovernance, mcpServer[jp] missing aiGovernance, mcpServer[ru] missing aiGovernance, mcpServer[zh] missing aiGovernance] ==> expected: <true> but was: <false>
Raw output
org.opentest4j.AssertionFailedError: AI governance projection mapping gaps: [aiApplication[en] missing aiGovernance, aiApplication[jp] missing aiGovernance, aiApplication[ru] missing aiGovernance, aiApplication[zh] missing aiGovernance, llmModel[en] missing aiGovernance, llmModel[jp] missing aiGovernance, llmModel[ru] missing aiGovernance, llmModel[zh] missing aiGovernance, mcpServer[en] missing aiGovernance, mcpServer[jp] missing aiGovernance, mcpServer[ru] missing aiGovernance, mcpServer[zh] missing aiGovernance] ==> expected: <true> but was: <false>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:36)
at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:214)
at org.openmetadata.service.search.IndexMappingNestedFieldConsistencyTest.aiGovernanceProjectionFieldsMustBeMappedExplicitly(IndexMappingNestedFieldConsistencyTest.java:192)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
SearchIndexFactoryTest.pageReindexFieldsIncludeHierarchyFields
page reindex fields must include 'parent'; got [votes, tags, owners, dataProducts, reviewers, extension, followers, certification, domains] ==> expected: <true> but was: <false>
Raw output
org.opentest4j.AssertionFailedError: page reindex fields must include 'parent'; got [votes, tags, owners, dataProducts, reviewers, extension, followers, certification, domains] ==> expected: <true> but was: <false>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:42)
at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:191)
at org.openmetadata.service.search.SearchIndexFactoryTest.assertReindexFields(SearchIndexFactoryTest.java:303)
at org.openmetadata.service.search.SearchIndexFactoryTest.pageReindexFieldsIncludeHierarchyFields(SearchIndexFactoryTest.java:250)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesNullToTableChildrenOnRemove
Argument(s) are different! Wanted:
searchClient.updateChildren(
[cluster_column_search_index],
<any org.apache.commons.lang3.tuple.Pair>,
<Capturing argument: Pair>
);
-> at org.openmetadata.service.search.SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesNullToTableChildrenOnRemove(SearchRepositoryBehaviorTest.java:1128)
Actual invocations have different arguments at position [0]:
searchClient.updateEntity(
"cluster_table_search_index",
"ea94dcc3-90a6-4b08-95ef-d3fa2b6dd25f",
{"tagFQN" = null, "name" = null, "description" = null, "style" = null},
"if (ctx._source.certification != null && ctx._source.certification.tagLabel != null) {
ctx._source.certification.tagLabel.style = params.style;
ctx._source.certification.tagLabel.description = params.description;
ctx._source.certification.tagLabel.tagFQN = params.tagFQN;
ctx._source.certification.tagLabel.name = params.name;
}
"
);
-> at org.openmetadata.service.search.SearchRepository.updateEntityCertificationInSearch(SearchRepository.java:2084)
searchClient.updateChildren(
[cluster_tableColumn],
(table.id,ea94dcc3-90a6-4b08-95ef-d3fa2b6dd25f),
(if (params.certification == null) {
ctx._source.remove('certification');
} else {
ctx._source.certification = params.certification;
}
,{certification=null})
);
-> at org.openmetadata.service.search.SearchRepository.cascadeCertificationToChildren(SearchRepository.java:2044)
Raw output
Argument(s) are different! Wanted:
searchClient.updateChildren(
[cluster_column_search_index],
<any org.apache.commons.lang3.tuple.Pair>,
<Capturing argument: Pair>
);
-> at org.openmetadata.service.search.SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesNullToTableChildrenOnRemove(SearchRepositoryBehaviorTest.java:1128)
Actual invocations have different arguments at position [0]:
searchClient.updateEntity(
"cluster_table_search_index",
"ea94dcc3-90a6-4b08-95ef-d3fa2b6dd25f",
{"tagFQN" = null, "name" = null, "description" = null, "style" = null},
"if (ctx._source.certification != null && ctx._source.certification.tagLabel != null) {
ctx._source.certification.tagLabel.style = params.style;
ctx._source.certification.tagLabel.description = params.description;
ctx._source.certification.tagLabel.tagFQN = params.tagFQN;
ctx._source.certification.tagLabel.name = params.name;
}
"
);
-> at org.openmetadata.service.search.SearchRepository.updateEntityCertificationInSearch(SearchRepository.java:2084)
searchClient.updateChildren(
[cluster_tableColumn],
(table.id,ea94dcc3-90a6-4b08-95ef-d3fa2b6dd25f),
(if (params.certification == null) {
ctx._source.remove('certification');
} else {
ctx._source.certification = params.certification;
}
,{certification=null})
);
-> at org.openmetadata.service.search.SearchRepository.cascadeCertificationToChildren(SearchRepository.java:2044)
at org.openmetadata.service.search.SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesNullToTableChildrenOnRemove(SearchRepositoryBehaviorTest.java:1128)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesToTableChildrenOnAdd
Argument(s) are different! Wanted:
searchClient.updateChildren(
[cluster_column_search_index],
<Capturing argument: Pair>,
<Capturing argument: Pair>
);
-> at org.openmetadata.service.search.SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesToTableChildrenOnAdd(SearchRepositoryBehaviorTest.java:1097)
Actual invocations have different arguments at position [0]:
searchClient.updateEntity(
"cluster_table_search_index",
"c7cac9b7-12c5-4a0e-b5d2-f78b74ef6d89",
{"tagFQN" = "Certification.Gold", "name" = "Gold", "description" = "Certified", "style" = null},
"if (ctx._source.certification != null && ctx._source.certification.tagLabel != null) {
ctx._source.certification.tagLabel.style = params.style;
ctx._source.certification.tagLabel.description = params.description;
ctx._source.certification.tagLabel.tagFQN = params.tagFQN;
ctx._source.certification.tagLabel.name = params.name;
}
"
);
-> at org.openmetadata.service.search.SearchRepository.updateEntityCertificationInSearch(SearchRepository.java:2084)
searchClient.updateChildren(
[cluster_tableColumn],
(table.id,c7cac9b7-12c5-4a0e-b5d2-f78b74ef6d89),
(if (params.certification == null) {
ctx._source.remove('certification');
} else {
ctx._source.certification = params.certification;
}
,{certification=org.openmetadata.schema.type.AssetCertification@1e2744e3[tagLabel=org.openmetadata.schema.type.TagLabel@5ca42f53[tagFQN=Certification.Gold,name=Gold,displayName=<null>,description=Certified,style=<null>,source=Classification,labelType=Manual,state=Confirmed,href=<null>,reason=<null>,appliedAt=<null>,appliedBy=<null>,metadata=<null>],appliedDate=<null>,expiryDate=<null>]})
);
-> at org.openmetadata.service.search.SearchRepository.cascadeCertificationToChildren(SearchRepository.java:2044)
Raw output
Argument(s) are different! Wanted:
searchClient.updateChildren(
[cluster_column_search_index],
<Capturing argument: Pair>,
<Capturing argument: Pair>
);
-> at org.openmetadata.service.search.SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesToTableChildrenOnAdd(SearchRepositoryBehaviorTest.java:1097)
Actual invocations have different arguments at position [0]:
searchClient.updateEntity(
"cluster_table_search_index",
"c7cac9b7-12c5-4a0e-b5d2-f78b74ef6d89",
{"tagFQN" = "Certification.Gold", "name" = "Gold", "description" = "Certified", "style" = null},
"if (ctx._source.certification != null && ctx._source.certification.tagLabel != null) {
ctx._source.certification.tagLabel.style = params.style;
ctx._source.certification.tagLabel.description = params.description;
ctx._source.certification.tagLabel.tagFQN = params.tagFQN;
ctx._source.certification.tagLabel.name = params.name;
}
"
);
-> at org.openmetadata.service.search.SearchRepository.updateEntityCertificationInSearch(SearchRepository.java:2084)
searchClient.updateChildren(
[cluster_tableColumn],
(table.id,c7cac9b7-12c5-4a0e-b5d2-f78b74ef6d89),
(if (params.certification == null) {
ctx._source.remove('certification');
} else {
ctx._source.certification = params.certification;
}
,{certification=org.openmetadata.schema.type.AssetCertification@1e2744e3[tagLabel=org.openmetadata.schema.type.TagLabel@5ca42f53[tagFQN=Certification.Gold,name=Gold,displayName=<null>,description=Certified,style=<null>,source=Classification,labelType=Manual,state=Confirmed,href=<null>,reason=<null>,appliedAt=<null>,appliedBy=<null>,metadata=<null>],appliedDate=<null>,expiryDate=<null>]})
);
-> at org.openmetadata.service.search.SearchRepository.cascadeCertificationToChildren(SearchRepository.java:2044)
at org.openmetadata.service.search.SearchRepositoryBehaviorTest.propagateCertificationTagsCascadesToTableChildrenOnAdd(SearchRepositoryBehaviorTest.java:1097)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
AuthenticationCodeFlowHandlerTest.handleCallbackWithoutSessionReturnsErrorResponse
Wanted but not invoked:
response.setStatus(500);
-> at org.openmetadata.service.security.AuthenticationCodeFlowHandlerTest.handleCallbackWithoutSessionReturnsErrorResponse(AuthenticationCodeFlowHandlerTest.java:617)
However, there were exactly 2 interactions with this mock:
response.addCookie(
jakarta.servlet.http.Cookie@e086f5a4{JSESSIONID=,{HttpOnly=true, Max-Age=0, Path=/, Secure=false}}
);
-> at org.openmetadata.service.security.AuthenticationCodeFlowHandler.clearSessionCookie(AuthenticationCodeFlowHandler.java:899)
response.sendRedirect("null/signin");
-> at org.openmetadata.service.security.AuthenticationCodeFlowHandler.handleCallback(AuthenticationCodeFlowHandler.java:485)
Raw output
Wanted but not invoked:
response.setStatus(500);
-> at org.openmetadata.service.security.AuthenticationCodeFlowHandlerTest.handleCallbackWithoutSessionReturnsErrorResponse(AuthenticationCodeFlowHandlerTest.java:617)
However, there were exactly 2 interactions with this mock:
response.addCookie(
jakarta.servlet.http.Cookie@e086f5a4{JSESSIONID=,{HttpOnly=true, Max-Age=0, Path=/, Secure=false}}
);
-> at org.openmetadata.service.security.AuthenticationCodeFlowHandler.clearSessionCookie(AuthenticationCodeFlowHandler.java:899)
response.sendRedirect("null/signin");
-> at org.openmetadata.service.security.AuthenticationCodeFlowHandler.handleCallback(AuthenticationCodeFlowHandler.java:485)
at org.openmetadata.service.security.AuthenticationCodeFlowHandlerTest.handleCallbackWithoutSessionReturnsErrorResponse(AuthenticationCodeFlowHandlerTest.java:617)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
github-actions / Test Report
AuthenticationCodeFlowHandlerTest.handleRefreshWithoutCredentialsFallsBackToLogout
Cannot invoke "jakarta.servlet.ServletOutputStream.println(String)" because the return value of "jakarta.servlet.http.HttpServletResponse.getOutputStream()" is null
Raw output
java.lang.NullPointerException: Cannot invoke "jakarta.servlet.ServletOutputStream.println(String)" because the return value of "jakarta.servlet.http.HttpServletResponse.getOutputStream()" is null
at org.openmetadata.service.security.AuthenticationCodeFlowHandler.getErrorMessage(AuthenticationCodeFlowHandler.java:880)
at org.openmetadata.service.security.AuthenticationCodeFlowHandler.handleRefresh(AuthenticationCodeFlowHandler.java:623)
at org.openmetadata.service.security.AuthenticationCodeFlowHandlerTest.handleRefreshWithoutCredentialsFallsBackToLogout(AuthenticationCodeFlowHandlerTest.java:971)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)