Skip to content

fix(domains): deleted domain's assets and activity reappear on same-name recreate (1.13) (#28923) - #31879

Open
sonika-shah wants to merge 2 commits into
1.13from
fix/domain-recreate-28923-1.13
Open

fix(domains): deleted domain's assets and activity reappear on same-name recreate (1.13) (#28923)#31879
sonika-shah wants to merge 2 commits into
1.13from
fix/domain-recreate-28923-1.13

fix(feed): purge entity feed threads on hard delete so a recreated sa…

735373e
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
GitHub Actions / Test Report failed Aug 21, 2026 in 0s

6145 tests run, 0 skipped, 8 failed.

Annotations

Check failure on line 2999 in openmetadata-service/src/test/java/org/openmetadata/csv/EntityCsvTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 207 in openmetadata-service/src/test/java/org/openmetadata/service/search/IndexMappingNestedFieldConsistencyTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 192 in openmetadata-service/src/test/java/org/openmetadata/service/search/IndexMappingNestedFieldConsistencyTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 250 in openmetadata-service/src/test/java/org/openmetadata/service/search/SearchIndexFactoryTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 1128 in openmetadata-service/src/test/java/org/openmetadata/service/search/SearchRepositoryBehaviorTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 1097 in openmetadata-service/src/test/java/org/openmetadata/service/search/SearchRepositoryBehaviorTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 617 in openmetadata-service/src/test/java/org/openmetadata/service/security/AuthenticationCodeFlowHandlerTest.java

See this annotation in the file changed.

@github-actions 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)

Check failure on line 971 in openmetadata-service/src/test/java/org/openmetadata/service/security/AuthenticationCodeFlowHandlerTest.java

See this annotation in the file changed.

@github-actions 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)