This is an automated email from the ASF dual-hosted git repository.
ppawar pushed a commit to branch atlas-2.5
in repository https://gitbox.apache.org/repos/asf/atlas.git
The following commit(s) were added to refs/heads/atlas-2.5 by this push:
new f8bdcaa07 ATLAS-5183: React UI: Business metadata attribute filters
send incomplete attribute name in entityFilters API payload (#493) (
cherry-picked from d7cfa0822eb6f707dc79de0eff8ef617dbbaf92c)
f8bdcaa07 is described below
commit f8bdcaa0729251356f5fd96aa2dff18a8594e7f1
Author: Prasad Pawar <[email protected]>
AuthorDate: Mon Jan 12 17:03:48 2026 +0530
ATLAS-5183: React UI: Business metadata attribute filters send incomplete
attribute name in entityFilters API payload (#493)
( cherry-picked from d7cfa0822eb6f707dc79de0eff8ef617dbbaf92c)
---
dashboard/src/components/QueryBuilder/Filters.tsx | 6 +++++-
dashboard/src/utils/CommonViewFunction.ts | 4 +++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dashboard/src/components/QueryBuilder/Filters.tsx
b/dashboard/src/components/QueryBuilder/Filters.tsx
index b2a3930ec..ece86573e 100644
--- a/dashboard/src/components/QueryBuilder/Filters.tsx
+++ b/dashboard/src/components/QueryBuilder/Filters.tsx
@@ -261,7 +261,11 @@ const Filters = ({
"Business Attributes: " + businessMetadataKey
);
if (returnObj) {
- returnObj.id = businessMetadataKey + "." + returnObj.id;
+ // Update both id and name to include full business metadata name
+ // This ensures rule.field contains the full name like
"test_businessMetadata.attr1"
+ const fullName = businessMetadataKey + "." + returnObj.id;
+ returnObj.id = fullName;
+ returnObj.name = fullName; // Also update name so query builder uses
the full name
returnObj.label = returnObj.label;
returnObj.data = { entityType: "businessMetadata" };
filters.push(returnObj);
diff --git a/dashboard/src/utils/CommonViewFunction.ts
b/dashboard/src/utils/CommonViewFunction.ts
index d8d83b9d2..3ec4b290f 100644
--- a/dashboard/src/utils/CommonViewFunction.ts
+++ b/dashboard/src/utils/CommonViewFunction.ts
@@ -110,8 +110,10 @@ export const attributeFilter = {
: typeof (obj.value || obj.attributeValue) === "string"
? (obj.value || obj.attributeValue).trim()
: obj.value || obj.attributeValue;
+ // Prioritize field (used by react-querybuilder), then id, then
attributeName
+ // For business metadata, field should contain full name like
"test_businessMetadata.attr1"
let url = [
- obj.field || obj.attributeName,
+ obj.field || obj.id || obj.attributeName,
mapApiOperatorToUI(obj.operator),
value
];