Area: Product Issues
Sub-Area: Structured Properties / Search Filters
Issue
Starting in DataHub v2.2.0, column-level (schema field) structured properties no longer appear in the Discover screen's search filter panel, including the "More" filter menu. Prior to this version, these properties were visible and usable as filters. The change was intentional: the Discover screen searches asset-level entities such as datasets, dashboards, charts, and pipelines — it does not search columns directly. The updated filter logic now excludes structured properties whose allowed entity types do not match the entity types being searched. Because column-scoped structured properties apply to schemaField entities rather than to dataset or other asset entities, they are filtered out of the Discover facet list to prevent unreliable or empty search results.
You Might Be Asking
- Why did my column-level structured property disappear from the Discover "More" filter menu after upgrading?
- How can I still find assets that have a specific column-level structured property set?
- Can I restore the old behavior so column-scoped properties appear in Discover filters?
Solution
There are three supported approaches for locating assets associated with column-level structured properties after this change.
-
Query columns directly via the GraphQL API (Recommended)
Use the
searchAcrossEntitiesGraphQL query targetingSCHEMA_FIELDentity types. This returns every column where the property is set, along with the parent table it belongs to. Navigate tohttps://<your-instance>.datahubproject.io/api/graphiqland run the following query, substituting your property's field name and desired filter value:query { searchAcrossEntities( input: { types: [SCHEMA_FIELD] query: "*" start: 0 count: 5000 orFilters: [ { and: [ { field: "structuredProperties.<your_property_id>" values: ["<your_filter_value>"] condition: EQUAL } ] } ] } ) { total searchResults { entity { ... on SchemaFieldEntity { urn fieldPath parent { urn ... on Dataset { name platform { name } } } } } } } }Adjust
countas needed. This approach is the most direct way to retrieve columns and their parent tables filtered by any column-level structured property value. -
Use a Glossary Term or Tag on columns
If your goal is to surface parent tables in Discover that contain columns matching a certain criterion, apply a glossary term or tag to those columns. Column-level tags and terms are indexed and can be searched from the Discover screen using the Advanced Filters panel. This will return the tables that have at least one column with the specified tag or term applied.
- Create or identify an appropriate glossary term or tag in DataHub (e.g., "Key Data Element").
- Apply the term or tag to the relevant columns.
- In Discover, use Advanced Filters to filter by that term or tag.
-
Extend the structured property to apply at the asset (Dataset) level
If it is appropriate in your data governance model to mark entire tables — not just individual columns — with the property, you can add
Dataset(or other asset types) to the structured property's allowed entity types. OnceDatasetis included, the property will reappear in the Discover "More" filter menu and can be used to filter dataset-level search results.- Navigate to Govern > Structured Properties in DataHub.
- Open the relevant structured property.
- Edit the Applies To entity types and add Dataset (and/or any other desired asset types).
- Save the changes. The property will now appear in Discover filters for dataset searches.
Note: This option only matches tables that have the property set at the table level itself — it will not match tables solely because one of their columns has the property set.
Additional Notes
This behavioral change was introduced in DataHub v2.2.0 and is intentional, not a bug. The underlying filter logic (implemented in SearchUtils.java) now validates that a structured property's allowed entity types overlap with the entity types included in the current search context before surfacing the property as a filter facet. Column-scoped structured properties use the schemaField entity type (urn:li:entityType:datahub.schemaField), which is not included in Discover's default asset-level search scope. Additionally, if a structured property's "Show in Search Filters" setting is disabled or its status is not ENABLED, it will not appear in filter menus regardless of entity type configuration. Verify this setting under Govern > Structured Properties if the property does not appear even after applying the workarounds above. The GraphQL API approach (Option 1) is the most robust and flexible solution for querying column-level properties and is recommended as a long-term pattern.
Related Documentation
- DataHub GraphQL API Overview
- searchAcrossEntities GraphQL Query Reference
- Structured Properties Documentation
- DataHub Search Guide
- Business Glossary and Tags
Tags: structured-properties, search-filters, discover, schema-field, column-level, v2.2.0, breaking-change, graphql, search-facets, entity-types