> ## Documentation Index
> Fetch the complete documentation index at: https://docs.open-metadata.org/llms.txt
> Use this file to discover all available pages before exploring further.

# All Releases | OpenMetadata All Releases

> Explore all OpenMetadata releases with detailed changelogs, new features, bug fixes, and upgrade guides. Stay updated with the latest versions and improvements.

# Releases

<Tip>
  The OpenMetadata community is on a monthly release cadence. At every 4-5 weeks we will be releasing a new version.
</Tip>

<CardGroup>
  <Card icon="party-horn" title="Upgrade OpenMetadata" href="/v1.12.x/deployment/upgrade">
    Learn how to upgrade your OpenMetadata instance to 1.12.8!
  </Card>
</CardGroup>

<Update label="1.12.8 Release" description="13th May 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.8-release).

  ## Changelog

  OpenMetadata 1.12.8 is a maintenance release focused on hardening the platform against newly disclosed CVEs, eliminating long-standing database hotspots in the search and tag pipelines, and tightening connector behavior across Databricks, Unity Catalog, Athena, Datalake, and OpenLineage. The release also lands several quality-of-life UI fixes around governance approvals, advanced search, and custom properties.

  ### ⚠️ Backward Incompatible / Notable Behavior Changes

  * **Notification alerts — `Location` source removed** [#27683](https://github.com/open-metadata/OpenMetadata/pull/27683): The deprecated `Location` entity has been removed from the list of supported sources in notification alerts. `Domain` and `Data Product` are now first-class sources. Existing alerts configured against `Location` will need to be re-created against a supported source.
  * **`ContainerResource` default fields trimmed** ([#27894](https://github.com/open-metadata/OpenMetadata/pull/27894) follow-up): `children` is no longer returned by default on `GET /v1/containers` list responses; clients that depended on the implicit inclusion must request it explicitly via the `fields` query parameter. This restores the documented behavior and unblocks the batched data-model column tag retrieval below.
  * **Soft-deleted users excluded from Experts/Reviewers** [#27120](https://github.com/open-metadata/OpenMetadata/pull/27120): Users marked `deleted` no longer appear in the Experts/Reviewers selector across entities. Workflows that relied on soft-deleted users remaining visible (for example, restoring an entity to its previous reviewer) must restore the user first.

  ### 🔒 Security (Vulnerability Remediation)

  This release addresses the May 8 2026 Snyk scan against the 1.12.7 branch and additional CVEs picked up by AWS Inspector. Nine of the highest-severity findings are resolved through direct version bumps; one (`libthrift`) is force-pinned because upstream Jena has not yet rebased.

  **Backend / Java**

  * **CRITICAL — Jetty HTTP Request Smuggling (CVE-2026-2332):** `org.eclipse.jetty:jetty-http` bumped `12.1.6 → 12.1.7` [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **HIGH — Apache Thrift (CVE-2026-43869):** `libthrift` force-pinned to `0.23.0` via `dependencyManagement` to override the vulnerable transitive shipped by `apache-jena-libs` [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010) / [#28035](https://github.com/open-metadata/OpenMetadata/pull/28035).
  * **HIGH — PostgreSQL JDBC SCRAM-SHA-256 DoS (CVE-2026-42198):** `org.postgresql:postgresql` bumped `42.7.7 → 42.7.11` [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **HIGH — BouncyCastle Crypto Signature Bypass + Timing Attack (CVE-2026-5598):** `bcprov-jdk18on` / `bcpkix-jdk18on` pinned to `1.84`, also addressing CVE-2026-0636 and CVE-2026-5588 [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **HIGH — Apache Log4j (CVE-2026-34477, CVE-2026-34478, CVE-2026-34480):** `log4j` bumped `2.25.3 → 2.25.4` [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994).
  * **MED — Jackson 3.x deserialization CVEs (GHSA-72hv-8253-57qq):** `jackson-core` bumped `2.17.2 → 2.18.7`. `jsonschema2pojo-core` is now declared `<scope>provided</scope>` in the `common` module so the Jackson 3.x transitive is excluded from the runtime classpath, since the annotators it powers only run at build time [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).
  * **MED — jsonschema2pojo (CVE-2025-3588):** `jsonschema2pojo` bumped `1.2.2 → 1.3.0` (later aligned to `1.3.1` to resolve a maven-plugin classpath issue) [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994).
  * **MED/LOW — Logback (CVE-2025-11226, CVE-2026-1225):** `logback-core` / `logback-classic` bumped `1.5.19 → 1.5.25` [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **Netty:** `netty-bom` bumped `4.1.132 → 4.1.133`. `netty-transport-native-epoll` excluded (Linux-only perf optimization flagged by an overly-broad GHSA range, not used at runtime) [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994) / [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).
  * **Azure Identity (CVE-2024-35255):** `azure-identity` aligned to `1.15.2` and `azure-keyvault` bumped to remove vulnerable transitives [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994) / [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).
  * **Reactor Netty & Spring:** `reactor-netty` and `spring` bumped to their current patched lines [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996) / [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).

  **Frontend / UI**

  * **axios** upgraded to `1.15.2` to clear reported CVEs in the UI bundle.
  * **postcss** pinned to `8.5.10` with a Yarn `resolutions` override in `openmetadata-ui-core-components` to resolve the Dependabot advisory [#27778](https://github.com/open-metadata/OpenMetadata/pull/27778).
  * **postcss** bumped in the main UI module as well [#27729](https://github.com/open-metadata/OpenMetadata/pull/27729).

  **Ingestion / Container Images**

  * **ImageMagick purged** from the ingestion image — it was only a transitive of the Airflow base image, was never used by ingestion code, and continued to surface CVEs after Airflow upgrades. Removing it eliminates the surface entirely [#27752](https://github.com/open-metadata/OpenMetadata/pull/27752).

  ### 🎨 UI Changes

  **Improvements**

  * **Approvals show proposed changes inline** [#27201](https://github.com/open-metadata/OpenMetadata/pull/27201): Governance approval task threads now render a *Proposed Changes* section with clickable entity links, so reviewers can see exactly what changed before approving instead of opening the entity in a new tab.
  * **Description added to Advanced Search query builder** [#27913](https://github.com/open-metadata/OpenMetadata/pull/27913): The `description` field is now a first-class searchable attribute with `Contains`, `Not Contains`, `Is Null`, and `Is Not Null` operators. The `descriptionStatus` label was also corrected (previously rendered with the wrong key).
  * **Service documentation panel: admonitions + code copy button** [#27732](https://github.com/open-metadata/OpenMetadata/pull/27732): The in-product service docs now render note/warning/tip admonitions and add a copy button to fenced code blocks.

  **Fixes**

  * **Clipboard works on non-secure (HTTP) contexts** [#28003](https://github.com/open-metadata/OpenMetadata/pull/28003): `CodeBlockComponent` now uses the `useClipboard` hook, which falls back to `document.execCommand` when the modern Clipboard API is unavailable, fixing copy actions for users on self-hosted HTTP deployments.
  * **Custom properties with dots in their name now display** [#27390](https://github.com/open-metadata/OpenMetadata/pull/27390): The UI was treating `.` in custom-property names as a path separator, hiding the property entirely. Names with dots are now rendered correctly.
  * **Tier/Certification tag matching uses FQN prefix, not substring** [#27700](https://github.com/open-metadata/OpenMetadata/pull/27700): Prevents unrelated tags whose FQN happened to *contain* a tier or certification tag's FQN from being mis-classified.
  * **Upvote/Downvote icon retains primary color after blur** [#27898](https://github.com/open-metadata/OpenMetadata/pull/27898): The vote indicator no longer reverts to a neutral color when the entity page loses focus.
  * **AdvancedSearch description option — translations** [#27961](https://github.com/open-metadata/OpenMetadata/pull/27961): Missing/incorrect i18n strings on the new description operator filled in across supported locales.
  * **Rich-text editor migration** [#26887](https://github.com/open-metadata/OpenMetadata/pull/26887): Removed `@toast-ui/react-editor` and migrated remaining usages to the in-house `BlockEditor`, reducing bundle size and eliminating the transitive CVE surface from the abandoned editor package.
  * **ContainerPage tab counts now update reactively**: Added `childrenCount` to the `useMemo` dependency array so tab badges refresh when children load.

  ### 🔌 Connectors

  **Databases**

  * **Databricks — nested column descriptions + SQLAlchemy 2.x** [#27766](https://github.com/open-metadata/OpenMetadata/pull/27766): Descriptions on STRUCT/MAP/ARRAY-typed nested columns are now captured during metadata ingestion. The connector is also compatible with `sqlalchemy-databricks` running on SQLAlchemy 2.x.
  * **Unity Catalog — missing `httpPath`** [#27844](https://github.com/open-metadata/OpenMetadata/pull/27844): The connector no longer hard-fails when `httpPath` is omitted; it now produces a clear configuration error instead of an opaque stack trace.
  * **Athena — Iceberg table properties** [#27715](https://github.com/open-metadata/OpenMetadata/pull/27715): Iceberg-on-Athena tables now ingest table properties from the `$properties` metatable, surfacing Iceberg-specific metadata (format-version, write.target-file-size-bytes, etc.) in OpenMetadata.
  * **PostgreSQL / MSSQL — mutual TLS** [#27104](https://github.com/open-metadata/OpenMetadata/pull/27104): Both connectors now support client-certificate mTLS in addition to server-side SSL, matching enterprise PG/MSSQL hardening requirements.
  * **PostgreSQL — tag\_usage seq-scan eliminated** [#27824](https://github.com/open-metadata/OpenMetadata/pull/27824): Backport of #27158. The certification tag query now uses the covering index instead of a sequential scan, removing a multi-second hotspot during Data Insights runs on large catalogs.
  * **SQLAlchemy 2.x row access** [#27643](https://github.com/open-metadata/OpenMetadata/pull/27643): Replaced old-style row indexing that emitted deprecation warnings on SQLAlchemy 2.x.

  **Datalake / Object Stores**

  * **Datalake — nested arrays of structs in JSON** [#27798](https://github.com/open-metadata/OpenMetadata/pull/27798): Array-typed fields whose elements are nested structures are now parsed correctly and surface as proper nested column schemas.

  **Pipelines / Dashboards**

  * **Power BI — additional lineage logging** [#27970](https://github.com/open-metadata/OpenMetadata/pull/27970): More granular diagnostic logs in the Power BI lineage extractor make customer-side debugging substantially faster.

  **OpenLineage**

  * **AWS Glue, Kusto, and Cosmos DB dataset naming** [#27533](https://github.com/open-metadata/OpenMetadata/pull/27533): Adds dataset-naming support so OpenLineage events from these sources are resolved to the correct OpenMetadata entities.
  * **Namespace-based DB service resolution for `db_table`** [#27005](https://github.com/open-metadata/OpenMetadata/pull/27005): OpenLineage `db_table` lookups now resolve to the right DB service by namespace, fixing cross-service lineage gaps.
  * **Pipeline/job resolution by integration type** [#26821](https://github.com/open-metadata/OpenMetadata/pull/26821): OpenLineage pipelines and jobs are now mapped to their integration type so they show up under the correct pipeline service.

  **AI / Vector Embeddings**

  * **OpenAI embedding concurrency control** [#26574](https://github.com/open-metadata/OpenMetadata/pull/26574): Adds a configurable concurrency cap on outbound OpenAI embedding HTTP requests, preventing rate-limit storms during bulk reindex.

  **Ingestion Runtime**

  * **Bulk sink OOM under persistent flush failures** [#26838](https://github.com/open-metadata/OpenMetadata/pull/26838): The bulk sink no longer accumulates an unbounded retry buffer when downstream flushes keep failing; the buffer is now bounded and drops with a clear error.
  * **CronOMJob tolerations propagated** [#27955](https://github.com/open-metadata/OpenMetadata/pull/27955): Pod tolerations defined on a `CronOMJob` are now copied to the scheduled `OMJob`, so taint-isolated nodes keep working after a restart.
  * **PII recognizer language scoping** [#27919](https://github.com/open-metadata/OpenMetadata/pull/27919): PII recognizers are now included based on the configured language, eliminating false positives from recognizers loaded for unrelated locales.
  * **`dbt-extractor` pinned `>=0.5.0`** [#27777](https://github.com/open-metadata/OpenMetadata/pull/27777): Prevents the ARM-on-pip resolver from falling back to a source distribution that fails to build inside the ingestion container.

  ### 🛠 API (Backend)

  **Improvements**

  * **Reindex memory optimization for DatabaseSchema** [#27723](https://github.com/open-metadata/OpenMetadata/pull/27723) / [#28061](https://github.com/open-metadata/OpenMetadata/pull/28061): `DatabaseSchemaIndex` now skips the `tables` fan-out during reindex, reducing memory pressure on catalogs with very large schemas. All other entity indexes hydrate the full field set as before.
  * **SearchUtils consolidated; fuzzy ngram removed** [#27636](https://github.com/open-metadata/OpenMetadata/pull/27636): Merged the duplicated SearchUtils classes into one and dropped the redundant fuzzy match on ngram-tokenized fields (fuzzy + ngram compounded false positives). Adds substantial unit-test coverage.
  * **Certification tag batch query — source filter + indexed hash prefix** [#27847](https://github.com/open-metadata/OpenMetadata/pull/27847): The `TagUsageDAO.getCertTagsInternalBatch` query previously did a `tagFQN LIKE 'Certification.%'` scan and ran \~12s per call on heavy classification hierarchies. With a `source` filter and a hash-prefix predicate it now uses the covering index — eliminating \~19 hours of cumulative DB time per Data Insights run on a representative customer instance.
  * **Container data-model column tags — batched** [#27894](https://github.com/open-metadata/OpenMetadata/pull/27894): Replaces per-column tag lookups with a single batched query.
  * **`IndexResource` logs lowered to debug** [#27588](https://github.com/open-metadata/OpenMetadata/pull/27588): Reduces production log noise; verbose index lifecycle logs are now gated on `DEBUG`.

  **Fixes**

  * **`DataContract` 400 on entities without `dataProducts`** [#27861](https://github.com/open-metadata/OpenMetadata/pull/27861): The endpoint now handles entities that don't carry a `dataProducts` field, instead of rejecting the request.
  * **`/search` endpoint for Roles** [#27335](https://github.com/open-metadata/OpenMetadata/pull/27335): Adds the missing `GET /v1/roles/search` endpoint and aligns role selectors to use server-side search [#27737](https://github.com/open-metadata/OpenMetadata/pull/27737).
  * **MCP — SSE response when client negotiates `text/event-stream`** [#27917](https://github.com/open-metadata/OpenMetadata/pull/27917): The MCP endpoint now correctly returns an SSE-framed response when the client's `Accept` header asks for `text/event-stream`.
  * **MCP OAuth on Databricks** [#27922](https://github.com/open-metadata/OpenMetadata/pull/27922): Fixes the OAuth callback handling specific to Databricks-backed MCP clients.
  * **Time-series reindex — stale `parentOf` is a warning, not a failure** [#27800](https://github.com/open-metadata/OpenMetadata/pull/27800): During time-series reindex, an orphaned `parentOf` reference no longer aborts the run; it's logged as a warning and the reindex continues.
  * **Column bulk-ops search at scale** [#27216](https://github.com/open-metadata/OpenMetadata/pull/27216): Bulk operations on columns now return results consistently on large indices where the previous code path silently returned an empty set above a query-size threshold.
  * **OpenSearch HC5 transport — recoverable I/O reactor shutdown** [#27698](https://github.com/open-metadata/OpenMetadata/pull/27698): Transient `I/O reactor has been shut down` errors are now recovered automatically instead of leaving the client in a permanently failed state.
  * **Vector embedding healthcheck** [#27616](https://github.com/open-metadata/OpenMetadata/pull/27616): The `/health` probe now correctly reflects vector-embedding subsystem availability instead of always reporting healthy.
  * **CSV import — recursive extension validation + row-count accounting** [#27593](https://github.com/open-metadata/OpenMetadata/pull/27593) / [#27669](https://github.com/open-metadata/OpenMetadata/pull/27669): Recursive imports now validate `entityType` per row correctly and the post-import row counts match the file.
  * **`TableColumnCountToBeBetween` API response** [#27900](https://github.com/open-metadata/OpenMetadata/pull/27900): The Data Quality endpoint now returns the expected response shape for this test.
  * **Hyperlink workflow rules — `.keyword` suffix + Tags/Tier disambiguation** [#27799](https://github.com/open-metadata/OpenMetadata/pull/27799): Workflow rule conditions referencing tags/tier no longer match on the analyzed text field; they bind to `.keyword` so prefix collisions between Tags and Tier are resolved.

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.12.7-release...1.12.8-release)
</Update>

<Update label="1.12.7 Release" description="11th May 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.7-release).

  ## Changelog

  OpenMetadata 1.12.7 is a maintenance release focused on hardening the platform against newly disclosed CVEs, eliminating long-standing database hotspots in the search and tag pipelines, and tightening connector behavior across Databricks, Unity Catalog, Athena, Datalake, and OpenLineage. The release also lands several quality-of-life UI fixes around governance approvals, advanced search, and custom properties.

  ### ⚠️ Backward Incompatible / Notable Behavior Changes

  * **Notification alerts — `Location` source removed** [#27683](https://github.com/open-metadata/OpenMetadata/pull/27683): The deprecated `Location` entity has been removed from the list of supported sources in notification alerts. `Domain` and `Data Product` are now first-class sources. Existing alerts configured against `Location` will need to be re-created against a supported source.
  * **`ContainerResource` default fields trimmed** ([#27894](https://github.com/open-metadata/OpenMetadata/pull/27894) follow-up): `children` is no longer returned by default on `GET /v1/containers` list responses; clients that depended on the implicit inclusion must request it explicitly via the `fields` query parameter. This restores the documented behavior and unblocks the batched data-model column tag retrieval below.
  * **Soft-deleted users excluded from Experts/Reviewers** [#27120](https://github.com/open-metadata/OpenMetadata/pull/27120): Users marked `deleted` no longer appear in the Experts/Reviewers selector across entities. Workflows that relied on soft-deleted users remaining visible (for example, restoring an entity to its previous reviewer) must restore the user first.

  ### 🔒 Security (Vulnerability Remediation)

  This release addresses the May 8 2026 Snyk scan against the 1.12.7 branch and additional CVEs picked up by AWS Inspector. Nine of the highest-severity findings are resolved through direct version bumps; one (`libthrift`) is force-pinned because upstream Jena has not yet rebased.

  **Backend / Java**

  * **CRITICAL — Jetty HTTP Request Smuggling (CVE-2026-2332):** `org.eclipse.jetty:jetty-http` bumped `12.1.6 → 12.1.7` [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **HIGH — Apache Thrift (CVE-2026-43869):** `libthrift` force-pinned to `0.23.0` via `dependencyManagement` to override the vulnerable transitive shipped by `apache-jena-libs` [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010) / [#28035](https://github.com/open-metadata/OpenMetadata/pull/28035).
  * **HIGH — PostgreSQL JDBC SCRAM-SHA-256 DoS (CVE-2026-42198):** `org.postgresql:postgresql` bumped `42.7.7 → 42.7.11` [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **HIGH — BouncyCastle Crypto Signature Bypass + Timing Attack (CVE-2026-5598):** `bcprov-jdk18on` / `bcpkix-jdk18on` pinned to `1.84`, also addressing CVE-2026-0636 and CVE-2026-5588 [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **HIGH — Apache Log4j (CVE-2026-34477, CVE-2026-34478, CVE-2026-34480):** `log4j` bumped `2.25.3 → 2.25.4` [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994).
  * **MED — Jackson 3.x deserialization CVEs (GHSA-72hv-8253-57qq):** `jackson-core` bumped `2.17.2 → 2.18.7`. `jsonschema2pojo-core` is now declared `<scope>provided</scope>` in the `common` module so the Jackson 3.x transitive is excluded from the runtime classpath, since the annotators it powers only run at build time [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).
  * **MED — jsonschema2pojo (CVE-2025-3588):** `jsonschema2pojo` bumped `1.2.2 → 1.3.0` (later aligned to `1.3.1` to resolve a maven-plugin classpath issue) [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994).
  * **MED/LOW — Logback (CVE-2025-11226, CVE-2026-1225):** `logback-core` / `logback-classic` bumped `1.5.19 → 1.5.25` [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996).
  * **Netty:** `netty-bom` bumped `4.1.132 → 4.1.133`. `netty-transport-native-epoll` excluded (Linux-only perf optimization flagged by an overly-broad GHSA range, not used at runtime) [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994) / [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).
  * **Azure Identity (CVE-2024-35255):** `azure-identity` aligned to `1.15.2` and `azure-keyvault` bumped to remove vulnerable transitives [#27994](https://github.com/open-metadata/OpenMetadata/pull/27994) / [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).
  * **Reactor Netty & Spring:** `reactor-netty` and `spring` bumped to their current patched lines [#27996](https://github.com/open-metadata/OpenMetadata/pull/27996) / [#28010](https://github.com/open-metadata/OpenMetadata/pull/28010).

  **Frontend / UI**

  * **axios** upgraded to `1.15.2` to clear reported CVEs in the UI bundle.
  * **postcss** pinned to `8.5.10` with a Yarn `resolutions` override in `openmetadata-ui-core-components` to resolve the Dependabot advisory [#27778](https://github.com/open-metadata/OpenMetadata/pull/27778).
  * **postcss** bumped in the main UI module as well [#27729](https://github.com/open-metadata/OpenMetadata/pull/27729).

  **Ingestion / Container Images**

  * **ImageMagick purged** from the ingestion image — it was only a transitive of the Airflow base image, was never used by ingestion code, and continued to surface CVEs after Airflow upgrades. Removing it eliminates the surface entirely [#27752](https://github.com/open-metadata/OpenMetadata/pull/27752).

  ### 🎨 UI Changes

  **Improvements**

  * **Approvals show proposed changes inline** [#27201](https://github.com/open-metadata/OpenMetadata/pull/27201): Governance approval task threads now render a *Proposed Changes* section with clickable entity links, so reviewers can see exactly what changed before approving instead of opening the entity in a new tab.
  * **Description added to Advanced Search query builder** [#27913](https://github.com/open-metadata/OpenMetadata/pull/27913): The `description` field is now a first-class searchable attribute with `Contains`, `Not Contains`, `Is Null`, and `Is Not Null` operators. The `descriptionStatus` label was also corrected (previously rendered with the wrong key).
  * **Service documentation panel: admonitions + code copy button** [#27732](https://github.com/open-metadata/OpenMetadata/pull/27732): The in-product service docs now render note/warning/tip admonitions and add a copy button to fenced code blocks.

  **Fixes**

  * **Clipboard works on non-secure (HTTP) contexts** [#28003](https://github.com/open-metadata/OpenMetadata/pull/28003): `CodeBlockComponent` now uses the `useClipboard` hook, which falls back to `document.execCommand` when the modern Clipboard API is unavailable, fixing copy actions for users on self-hosted HTTP deployments.
  * **Custom properties with dots in their name now display** [#27390](https://github.com/open-metadata/OpenMetadata/pull/27390): The UI was treating `.` in custom-property names as a path separator, hiding the property entirely. Names with dots are now rendered correctly.
  * **Tier/Certification tag matching uses FQN prefix, not substring** [#27700](https://github.com/open-metadata/OpenMetadata/pull/27700): Prevents unrelated tags whose FQN happened to *contain* a tier or certification tag's FQN from being mis-classified.
  * **Upvote/Downvote icon retains primary color after blur** [#27898](https://github.com/open-metadata/OpenMetadata/pull/27898): The vote indicator no longer reverts to a neutral color when the entity page loses focus.
  * **AdvancedSearch description option — translations** [#27961](https://github.com/open-metadata/OpenMetadata/pull/27961): Missing/incorrect i18n strings on the new description operator filled in across supported locales.
  * **Rich-text editor migration** [#26887](https://github.com/open-metadata/OpenMetadata/pull/26887): Removed `@toast-ui/react-editor` and migrated remaining usages to the in-house `BlockEditor`, reducing bundle size and eliminating the transitive CVE surface from the abandoned editor package.
  * **ContainerPage tab counts now update reactively**: Added `childrenCount` to the `useMemo` dependency array so tab badges refresh when children load.

  ### 🔌 Connectors

  **Databases**

  * **Databricks — nested column descriptions + SQLAlchemy 2.x** [#27766](https://github.com/open-metadata/OpenMetadata/pull/27766): Descriptions on STRUCT/MAP/ARRAY-typed nested columns are now captured during metadata ingestion. The connector is also compatible with `sqlalchemy-databricks` running on SQLAlchemy 2.x.
  * **Unity Catalog — missing `httpPath`** [#27844](https://github.com/open-metadata/OpenMetadata/pull/27844): The connector no longer hard-fails when `httpPath` is omitted; it now produces a clear configuration error instead of an opaque stack trace.
  * **Athena — Iceberg table properties** [#27715](https://github.com/open-metadata/OpenMetadata/pull/27715): Iceberg-on-Athena tables now ingest table properties from the `$properties` metatable, surfacing Iceberg-specific metadata (format-version, write.target-file-size-bytes, etc.) in OpenMetadata.
  * **PostgreSQL / MSSQL — mutual TLS** [#27104](https://github.com/open-metadata/OpenMetadata/pull/27104): Both connectors now support client-certificate mTLS in addition to server-side SSL, matching enterprise PG/MSSQL hardening requirements.
  * **PostgreSQL — tag\_usage seq-scan eliminated** [#27824](https://github.com/open-metadata/OpenMetadata/pull/27824): Backport of #27158. The certification tag query now uses the covering index instead of a sequential scan, removing a multi-second hotspot during Data Insights runs on large catalogs.
  * **SQLAlchemy 2.x row access** [#27643](https://github.com/open-metadata/OpenMetadata/pull/27643): Replaced old-style row indexing that emitted deprecation warnings on SQLAlchemy 2.x.

  **Datalake / Object Stores**

  * **Datalake — nested arrays of structs in JSON** [#27798](https://github.com/open-metadata/OpenMetadata/pull/27798): Array-typed fields whose elements are nested structures are now parsed correctly and surface as proper nested column schemas.

  **Pipelines / Dashboards**

  * **Power BI — additional lineage logging** [#27970](https://github.com/open-metadata/OpenMetadata/pull/27970): More granular diagnostic logs in the Power BI lineage extractor make customer-side debugging substantially faster.

  **OpenLineage**

  * **AWS Glue, Kusto, and Cosmos DB dataset naming** [#27533](https://github.com/open-metadata/OpenMetadata/pull/27533): Adds dataset-naming support so OpenLineage events from these sources are resolved to the correct OpenMetadata entities.
  * **Namespace-based DB service resolution for `db_table`** [#27005](https://github.com/open-metadata/OpenMetadata/pull/27005): OpenLineage `db_table` lookups now resolve to the right DB service by namespace, fixing cross-service lineage gaps.
  * **Pipeline/job resolution by integration type** [#26821](https://github.com/open-metadata/OpenMetadata/pull/26821): OpenLineage pipelines and jobs are now mapped to their integration type so they show up under the correct pipeline service.

  **AI / Vector Embeddings**

  * **OpenAI embedding concurrency control** [#26574](https://github.com/open-metadata/OpenMetadata/pull/26574): Adds a configurable concurrency cap on outbound OpenAI embedding HTTP requests, preventing rate-limit storms during bulk reindex.

  **Ingestion Runtime**

  * **Bulk sink OOM under persistent flush failures** [#26838](https://github.com/open-metadata/OpenMetadata/pull/26838): The bulk sink no longer accumulates an unbounded retry buffer when downstream flushes keep failing; the buffer is now bounded and drops with a clear error.
  * **CronOMJob tolerations propagated** [#27955](https://github.com/open-metadata/OpenMetadata/pull/27955): Pod tolerations defined on a `CronOMJob` are now copied to the scheduled `OMJob`, so taint-isolated nodes keep working after a restart.
  * **PII recognizer language scoping** [#27919](https://github.com/open-metadata/OpenMetadata/pull/27919): PII recognizers are now included based on the configured language, eliminating false positives from recognizers loaded for unrelated locales.
  * **`dbt-extractor` pinned `>=0.5.0`** [#27777](https://github.com/open-metadata/OpenMetadata/pull/27777): Prevents the ARM-on-pip resolver from falling back to a source distribution that fails to build inside the ingestion container.

  ### 🛠 API (Backend)

  **Improvements**

  * **Selective field fetch during reindexing** [#27723](https://github.com/open-metadata/OpenMetadata/pull/27723): Introduces `SearchIndex#getRequiredReindexFields()` so each entity index declares the minimum field set it needs. `EntityReader` now prunes the underlying DB query accordingly, dramatically reducing memory pressure during full reindex on large catalogs.
  * **SearchUtils consolidated; fuzzy ngram removed** [#27636](https://github.com/open-metadata/OpenMetadata/pull/27636): Merged the duplicated SearchUtils classes into one and dropped the redundant fuzzy match on ngram-tokenized fields (fuzzy + ngram compounded false positives). Adds substantial unit-test coverage.
  * **Certification tag batch query — source filter + indexed hash prefix** [#27847](https://github.com/open-metadata/OpenMetadata/pull/27847): The `TagUsageDAO.getCertTagsInternalBatch` query previously did a `tagFQN LIKE 'Certification.%'` scan and ran \~12s per call on heavy classification hierarchies. With a `source` filter and a hash-prefix predicate it now uses the covering index — eliminating \~19 hours of cumulative DB time per Data Insights run on a representative customer instance.
  * **Container data-model column tags — batched** [#27894](https://github.com/open-metadata/OpenMetadata/pull/27894): Replaces per-column tag lookups with a single batched query.
  * **`IndexResource` logs lowered to debug** [#27588](https://github.com/open-metadata/OpenMetadata/pull/27588): Reduces production log noise; verbose index lifecycle logs are now gated on `DEBUG`.

  **Fixes**

  * **`DataContract` 400 on entities without `dataProducts`** [#27861](https://github.com/open-metadata/OpenMetadata/pull/27861): The endpoint now handles entities that don't carry a `dataProducts` field, instead of rejecting the request.
  * **`/search` endpoint for Roles** [#27335](https://github.com/open-metadata/OpenMetadata/pull/27335): Adds the missing `GET /v1/roles/search` endpoint and aligns role selectors to use server-side search [#27737](https://github.com/open-metadata/OpenMetadata/pull/27737).
  * **MCP — SSE response when client negotiates `text/event-stream`** [#27917](https://github.com/open-metadata/OpenMetadata/pull/27917): The MCP endpoint now correctly returns an SSE-framed response when the client's `Accept` header asks for `text/event-stream`.
  * **MCP OAuth on Databricks** [#27922](https://github.com/open-metadata/OpenMetadata/pull/27922): Fixes the OAuth callback handling specific to Databricks-backed MCP clients.
  * **Time-series reindex — stale `parentOf` is a warning, not a failure** [#27800](https://github.com/open-metadata/OpenMetadata/pull/27800): During time-series reindex, an orphaned `parentOf` reference no longer aborts the run; it's logged as a warning and the reindex continues.
  * **Column bulk-ops search at scale** [#27216](https://github.com/open-metadata/OpenMetadata/pull/27216): Bulk operations on columns now return results consistently on large indices where the previous code path silently returned an empty set above a query-size threshold.
  * **OpenSearch HC5 transport — recoverable I/O reactor shutdown** [#27698](https://github.com/open-metadata/OpenMetadata/pull/27698): Transient `I/O reactor has been shut down` errors are now recovered automatically instead of leaving the client in a permanently failed state.
  * **Vector embedding healthcheck** [#27616](https://github.com/open-metadata/OpenMetadata/pull/27616): The `/health` probe now correctly reflects vector-embedding subsystem availability instead of always reporting healthy.
  * **CSV import — recursive extension validation + row-count accounting** [#27593](https://github.com/open-metadata/OpenMetadata/pull/27593) / [#27669](https://github.com/open-metadata/OpenMetadata/pull/27669): Recursive imports now validate `entityType` per row correctly and the post-import row counts match the file.
  * **`TableColumnCountToBeBetween` API response** [#27900](https://github.com/open-metadata/OpenMetadata/pull/27900): The Data Quality endpoint now returns the expected response shape for this test.
  * **Hyperlink workflow rules — `.keyword` suffix + Tags/Tier disambiguation** [#27799](https://github.com/open-metadata/OpenMetadata/pull/27799): Workflow rule conditions referencing tags/tier no longer match on the analyzed text field; they bind to `.keyword` so prefix collisions between Tags and Tier are resolved.

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.12.6-release...1.12.7-release)
</Update>

<Update label="1.12.6 Release" description="22nd April 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.6-release).

  ## Changelog

  ### Improvements

  * **Platform:** Enhanced search index performance and reduced memory footprint during reindex operations to minimize runtime impact
  * **Platform:** Improved reliability of bulk indexing with better handling of large payloads and batching
  * **Governance:** Refactored certification storage to improve consistency and auditability across entities
  * **Platform:** Added support for SAML metadata XML upload to simplify SSO configuration
  * **Ingestion:** Improved Looker ingestion error handling with safer logging and better diagnostics
  * **AI/Platform:** Introduced safeguards for large payload handling in vector embedding workflows to prevent system overload

  ### Fixes

  * **Security:** Addressed multiple vulnerabilities by upgrading dependencies including MCP Java SDK and netty-bom (CVE-2026-34237, CVE-2026-33870, CVE-2026-33871)
  * **Security:** Enforced stricter validation on token generation APIs to prevent unauthorized access
  * **Platform:** Fixed authentication token refresh issues causing session drops (notably in Safari environments)
  * **Platform:** Resolved failures in bulk indexing leading to 413 Request Too Large errors
  * **Platform:** Fixed issues with search index template creation and serialization impacting Data Quality indexing
  * **Platform:** Improved OAuth callback handling fallback logic for better stability
  * **Discovery:** Fixed inconsistencies in Tier filtering and tag aggregation logic
  * **Discovery:** Resolved UI access issues where restricted users could view tier/certification popovers
  * **Governance:** Fixed handling of non-boolean rule results and certification propagation issues
  * **Data Observability:** Fixed permission checks when creating Data Quality test cases
  * **Ingestion:** Fixed Airflow REST client connectivity issues impacting workflow execution
  * **Ingestion:** Resolved multiple connector issues including:
    * ClickHouse datatype parsing
    * Teradata column description ingestion
    * Pinot double datatype handling
    * S3 ingestion failure due to Pydantic validation (BucketArn field)
  * **Ingestion:** Improved handling of case sensitivity for table constraints during ingestion

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.12.5-release...1.12.6-release)
</Update>

<Update label="1.12.5 Release" description="13th April 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.5-release).

  ## Changelog

  ### Improvements

  * **Governance:** Refactor asset certification storage to tag\_usage table for improved data integrity and reliability
  * **Platform:** Enhance Search Index performance and reliability
  * **Platform:** Add SAML metadata XML upload support
  * **AI:** Enforce payload size limits for vector embedding bulk operations
  * **Platform:** Improve reindex process memory usage and assign lower thread priority to reduce application impact

  ### Fixes

  * **Security:** Bump MCP Java SDK from 1.1.0 to 1.1.1 to address CVE-2026-34237
  * **Security:** Upgrade netty-bom to 4.1.132.Final to address CVE-2026-33870 and CVE-2026-33871
  * **Security:** Enforce bot-type check on generateToken endpoint to prevent unauthorized JWT token generation
  * **Security:** Fix Vite vulnerability by upgrading to v7.3.2
  * **Platform:** Fix MSAL token renewal on Safari causing session loss due to ITP blocking
  * **Platform:** Ensure auth token is updated before retrying failed requests
  * **Platform:** Fix MCP OAuth callback servlet registration fallback
  * **Platform:** Fix runtime spacy model loading for non-root containers
  * **Platform:** Fix bulk sink serialization that broke Data Quality test case search indexing
  * **Platform:** Fix 413 Request Too Large errors via iterative bisection for large bulk indexing batches
  * **Discovery:** Fix tier and certification popovers accessible to view-only users on data asset header
  * **Discovery:** Fix Tier filter incorrectly combining getTags API with aggregation
  * **Discovery:** Improve export modal UX with inline errors and count loading state
  * **Governance:** Fix data-contract handling of non-Boolean semantics rule results and unsupported entity types
  * **Governance:** Fix certification tags leaking into tags field on LIST and missing appliedBy audit trail
  * **Governance:** Restore certification data in storeMany/updateMany before applying certification batch
  * **Data Observability:** Fix Data Quality permissions check for creating test cases
  * **Ingestion:** Fix Airflow REST Client connection issues
  * **Ingestion:** Fix Clickhouse LowCardinality DataType parsing
  * **Ingestion:** Fix Teradata column descriptions not being ingested
  * **Ingestion:** Fix Pinot DB double data type handling
  * **Ingestion:** Fix S3 ingestion failure caused by Pydantic validation error on BucketArn extra field
  * **Ingestion:** Improve Looker error handling with better warnings and credential protection in logs
  * **Ingestion:** Handle case sensitivity for table constraints during ingestion

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.12.4-release...1.12.5-release)
</Update>

<Update label="1.12.4 Release" description="31st March 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.4-release).

  ## Improvements

  * **Governance:** Refactor asset certification storage to tag\_usage table for improved data integrity and reliability [#26448](https://github.com/open-metadata/OpenMetadata/pull/26448)
  * **Platform:** Enhance Search Index performance and reliability [#26669](https://github.com/open-metadata/OpenMetadata/pull/26669)
  * **Platform:** Add SAML metadata XML upload support [#26862](https://github.com/open-metadata/OpenMetadata/pull/26862)
  * **AI:** Enforce payload size limits for vector embedding bulk operations [#26943](https://github.com/open-metadata/OpenMetadata/pull/26943)
  * **Platform:** Improve reindex process memory usage and assign lower thread priority to reduce application impact [#27153](https://github.com/open-metadata/OpenMetadata/pull/27153)

  ## Fixes

  * **Security:** Bump MCP Java SDK from 1.1.0 to 1.1.1 to address CVE-2026-34237 [#26886](https://github.com/open-metadata/OpenMetadata/pull/26886)
  * **Security:** Upgrade netty-bom to 4.1.132.Final to address CVE-2026-33870 and CVE-2026-33871 [#26938](https://github.com/open-metadata/OpenMetadata/pull/26938)
  * **Security:** Enforce bot-type check on generateToken endpoint to prevent unauthorized JWT token generation [#27078](https://github.com/open-metadata/OpenMetadata/pull/27078)
  * **Security:** Fix Vite vulnerability by upgrading to v7.3.2 [#27131](https://github.com/open-metadata/OpenMetadata/pull/27131)
  * **Platform:** Fix MSAL token renewal on Safari causing session loss due to ITP blocking [#27214](https://github.com/open-metadata/OpenMetadata/pull/27214)
  * **Platform:** Ensure auth token is updated before retrying failed requests [#27140](https://github.com/open-metadata/OpenMetadata/pull/27140)
  * **Platform:** Fix MCP OAuth callback servlet registration fallback [#26770](https://github.com/open-metadata/OpenMetadata/pull/26770)
  * **Platform:** Fix runtime spacy model loading for non-root containers [#26753](https://github.com/open-metadata/OpenMetadata/pull/26753)
  * **Platform:** Fix bulk sink serialization that broke Data Quality test case search indexing [#27202](https://github.com/open-metadata/OpenMetadata/pull/27202)
  * **Platform:** Fix 413 Request Too Large errors via iterative bisection for large bulk indexing batches [#27127](https://github.com/open-metadata/OpenMetadata/pull/27127)
  * **Discovery:** Fix tier and certification popovers accessible to view-only users on data asset header [#26880](https://github.com/open-metadata/OpenMetadata/pull/26880)
  * **Discovery:** Fix Tier filter incorrectly combining getTags API with aggregation [#26826](https://github.com/open-metadata/OpenMetadata/pull/26826)
  * **Discovery:** Improve export modal UX with inline errors and count loading state [#27096](https://github.com/open-metadata/OpenMetadata/pull/27096)
  * **Governance:** Fix data-contract handling of non-Boolean semantics rule results and unsupported entity types [#26850](https://github.com/open-metadata/OpenMetadata/pull/26850)
  * **Governance:** Fix certification tags leaking into tags field on LIST and missing appliedBy audit trail [#26876](https://github.com/open-metadata/OpenMetadata/pull/26876)
  * **Governance:** Restore certification data in storeMany/updateMany before applying certification batch [#26958](https://github.com/open-metadata/OpenMetadata/pull/26958)
  * **Data Observability:** Fix Data Quality permissions check for creating test cases [#27069](https://github.com/open-metadata/OpenMetadata/pull/27069)
  * **Ingestion:** Fix Airflow REST Client connection issues [#26895](https://github.com/open-metadata/OpenMetadata/pull/26895)
  * **Ingestion:** Fix Clickhouse LowCardinality DataType parsing [#26858](https://github.com/open-metadata/OpenMetadata/pull/26858)
  * **Ingestion:** Fix Teradata column descriptions not being ingested [#26695](https://github.com/open-metadata/OpenMetadata/pull/26695)
  * **Ingestion:** Fix Pinot DB double data type handling [#26680](https://github.com/open-metadata/OpenMetadata/pull/26680)
  * **Ingestion:** Fix S3 ingestion failure caused by Pydantic validation error on BucketArn extra field [#27180](https://github.com/open-metadata/OpenMetadata/pull/27180)
  * **Ingestion:** Improve Looker error handling with better warnings and credential protection in logs [#27236](https://github.com/open-metadata/OpenMetadata/pull/27236)
  * **Ingestion:** Handle case sensitivity for table constraints during ingestion [#27244](https://github.com/open-metadata/OpenMetadata/pull/27244)

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.12.3-release...1.12.4-release)
</Update>

<Update label="1.12.3 Release" description="20th March 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.3-release).

  ## Improvements

  * **AI:** Remove logging capability from MCP server
  * **Discovery:** Refactor search infrastructure to use canonical index aliases
  * **Discovery:** Add Metric entity type to Data Insights description coverage chart
  * **Discovery:** Add displayName search support and improve wildcard matching
  * **Discovery:** Users now inherit personas from their team memberships
  * **Discovery:** Service search now supports searching by display name in addition to service name
  * **Discovery:** Search placeholders in service tabs now dynamically reflect the asset type instead of the service name
  * **Ingestion:** Add support for S3 file paths in REST connector OpenAPI and config ingestion
  * **Ingestion:** Add SSRS connector for SQL Server Reporting Services
  * **Integration:** Added support for filtering cold storage files during datalake ingestion
  * **Integration:** Improved error handling to mark ingestion agents as failed when quota limits are exceeded
  * **Integration:** Enhanced Kafka Connect lineage to support wildcard file name matching for storage services
  * **Integration:** Added StorageServices entity support to the Python client SDK
  * **Integration:** Added support for dataflow to database table lineage in Power BI
  * **Integration:** Limited records summary logging to prevent out-of-memory failures in ingestion agents
  * **Data Observability:** Improved layout responsiveness for test case and test suite summary cards in Data Quality
  * **Data Observability:** Migrated Data Insights entity pagination from offset-based to keyset pagination to prevent sort buffer exhaustion
  * **Data Observability:** Increased notification template body size limit to 64KB
  * **Data Observability:** Enabled Quartz JDBC clustering to prevent duplicate event processing in high availability deployments
  * **Data Observability:** Pipeline logs breadcrumb and title now display entity display names instead of IDs
  * **Data Observability:** Aligned observability alerts and incident manager header styles with data quality page design
  * **Governance:** Activity feeds now correctly record the actual user for bulk asset operations on domains, data products, and teams
  * **Platform:** Improved server URL sanitization for deploy pipeline API calls
  * **Platform:** Improved Azure AD SSO logout to properly terminate IdP sessions
  * **Platform:** Implemented canvas-based edge rendering to significantly improve column-level lineage page performance for large tables

  ## Fixes

  * **AI:** Ensure glossary terms created via MCP generate change events correctly
  * **Data Observability:** Enable gzip compression on AWS IAM OpenSearch transport
  * **Data Observability:** Fix Trino dimension test case execution with EXPRESSION\_NOT\_AGGREGATE error
  * **Governance:** Add conditional rendering for ClassificationDetails GenericProvider
  * **Governance:** Fixed glossary status filtering to properly handle large numbers of glossary terms (3000+) by moving filtering logic to the backend
  * **Ingestion:** Fix column ingestion for nested NUMERIC types under RECORD columns in BigQuery
  * **Ingestion:** Fix Glue ingestion failure on nested STRUCT columns
  * **Ingestion:** Fix Hive ingestion for array columns with null arrayDataType
  * **Ingestion:** Fix lineage parser handling of CTEs in INSERT ... WITH statements
  * **Integration:** Fixed Trino ingestion to no longer require owner permissions when fetching view definitions
  * **Integration:** Fixed agent status display to accurately show the last 5 runs
  * **Integration:** Fixed auto-classification workflow registration in the ingestion-base image
  * **Integration:** Resolved Hive ingestion failures caused by duplicate column names when partition keys are present
  * **Integration:** Resolved Redshift lineage agent errors caused by LISTAGG result size limits
  * **Integration:** Fixed QuickSight ingestion to properly handle multiple datasets on the same datasource without collapsing them into a single DataModel
  * **Discovery:** Fixed asset count discrepancies for teams across different views
  * **Platform:** Fix audit log entries for accepted suggestions
  * **Platform:** Resolved issue where assets were missing from search results and lineage was not visible
  * **Platform:** Corrected Java client to return paginated list of ingestion pipelines instead of a single object
  * **Platform:** Fixed metric search indexing failures due to excessive nested clauses

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.12.1-release...1.12.3-release)
</Update>

<Update label="1.12.1 Release" description="22nd February 2026">
  You can find the GitHub release [here](https://github.com/open-metadata/OpenMetadata/releases/tag/1.12.1-release).

  ## Features

  ### AI Studio (Collate - Beta)

  Collate already hosted AI Agents that users could control via Applications, to generate descriptions, add Tiers, and Data Quality tests. AI Studio now provides visibility and control over AI agents powering the data platform.

  With AI Studio, users can customize the prompts of these agents so their output aligns with organizational needs. Moreover, admins can create new AI agents with specific behavior, capabilities and prompts, that can be executed or embedded in external AI Platforms thanks to the Metadata AI SDK.

  ### Metadata AI SDK

  The Metadata AI SDK enables programmatic access to Collate's AI agents and semantic layer, allowing teams to build custom chatbots, automate governance tasks, and integrate metadata intelligence into external applications.
  By creating Agents either via the UI in AI Studio or through the Metadata AI CLI, you can now access lineage information, quality metrics and business context through simple APIs based on Natural Language.
  The Metadata AI SDK is available via CLI and programmatic access in Java, Python, and Node.js.
  OpenMetadata users can also leverage the AI SDK by bringing MCP tooling easily into their langchain applications, adding all the necessary semantic intelligence into their agents!

  ### Auto Classification with Custom Recognizers (Collate)

  OpenMetadata already had an Auto Classification Metadata Agent that automatically tagged PII Sensitive data. With release 1.12, Collate brings the ability to create custom AI-powered recognizers for any classification using regex patterns, column names, and data content scanning.
  Moreover, users can report false positives with explanations, creating a feedback loop that improves model accuracy and ensures that the agent does not make the same mistakes again.

  ### Data Quality Test Library

  Release 1.12 takes Data Quality capabilities one step further than any other platform by letting admins create reusable, parameterized SQL-based test templates easily from the UI. Define tests once with parameters like table\_name and column\_name or any other custom parameter your users need, then apply consistently across multiple tables without rewriting SQL.
  Users can then apply these new tests via the UI, giving them centralized governance and standardized definitions for critical business rules organization-wide.

  ### Data Diff Column/Row Analysis (Collate)

  Granula tables ar visual comparison of differences between source and target column, row, and character level. Identify which columns were added, removed, or modified with side-by-side comparison. Drill down to specific rows and see character-level changes within fields. Visual diff interface accelerates troubleshooting and root cause analysis.

  ### GitHub Metadata Sink (Collate - Beta)

  Bring metadata under version control with automated Git commits for every metadata change in Collate. If you are using separate development and production environments, routing metadata changes through GitHub pull requests brings you a human in the loop experience for any event that you might want to push into higher environments via CICD.

  ### Human & AI Audit Logs

  While every asset already supported version history, OpenMetadata now supports a comprehensive audit logs track all user and AI agent actions across the platform.
  With a six-month retention, filtering by user, agent, time range, or action type as well as export capabilities, your governance teams can easily handle compliance reporting and security audits.

  ### Column Bulk Operations

  How can your teams keep up with an always growing and evolving Data Platform? Users can now aggregate identical column names across all asset types (tables, topics, containers, APIs, search indexes) in a single view to set descriptions, tags, and glossary terms for all instances simultaneously.
  This aggregate view also helps users detect inconsistencies where the same column has different definitions, as well as digging into specific elements by filtering operations by domain, tags or even metadata completeness.

  ### Column Details Panel

  Added an expandable details panel for columns. Users can now view column-level custom properties and metadata directly within the table view. The panel also includes a dedicated Data Quality section for quick visibility into column health. This eliminates the need to navigate away to access column details and quality insights.

  ### Open Standards: ODCS 3.1 & OpenLineage Support

  Import and export contracts in Open Data Contract Standard (ODCS) 3.1 format for interoperability with other tools. Collate's contract specification extends ODCS with terms of service, semantic relationships, and ownership details while maintaining compatibility.
  OpenMetadata also accepts events from OpenLineage, so you can now easily bring any OpenLineage-compatible systems through native API integration and benefit from the broader metadata semantics available in the platform.

  ### AskCollate Enhancements & MS Teams Integration (Collate)

  * Expanded entity support for Metrics, Knowledge Center articles, and Dashboard Data Models.
  * AskCollate now holds your company's context from glossary terms, metrics, and knowledge center. Pushing towards your governance initiatives also improves your AI tooling and interactions!
  * Enhanced thinking transparency showing detailed reasoning process
  * MS Teams integration alongside existing Slack integration, allowing your users to interact with AskCollate directly where they are without having to jump from tool to tool.

  ### Kubernetes Orchestrator

  OpenMetadata now brings a Kubernetes Orchestrator for those users that don't want to use Airflow to manage the Metadata Agents and other automations. With this new orchestrator, OpenMetadata doubles-down on a simplified deployment experience, while ensuring scalability and operational efficiency in production k8s environments.

  ### MCP Tools & Semantic Search

  We have added more tooling to OpenMetadata's MCP, helping you to create lineage, as well as adding all necessary DQ tooling around test definitions, test case creation and Root Cause Analysis.
  We have also been working on the feedback shared on MCP from the community, so keep sharing your thoughts on how we can make MCP even better.
  Moreover, the 1.12 release brings Semantic Search into OpenMetadata! You can enable it in the configuration to create vector embeddings for your entities, supporting both Bedrock and OpenAI embeddings. On top of that, we have created an MCP tool for Semantic Search so that you can interact with these vectors in your applications!

  ### New Connectors

  * Microsoft Fabric (beta): Connect to Microsoft's unified data platform including Data Warehouse, Power BI, and pipelines
  * Dremio: Support for lakehouse platform with query engine and semantic layer integration
  * Mulesoft: Integration with API management platform for API metadata and lineage
  * SFTP: Catalog unstructured files alongside structured data
  * Redshift Serverless: Native support for Amazon's serverless deployment option
  * StarRocks: Support for open-source analytical database

  ### Additional Enhancements

  * Learning Resources (?): Contextual tutorials and videos throughout UI based on current page, with admin customization for organization-specific training materials
  * Lineage Improvements: Column-only filtering, edge highlighting on hover, stored procedure support in edit mode, faster SQL parsing for complex lineages
  * Explore Page Sidebar: Right-side navigation showing lineage, data quality details, and custom properties without leaving explore view
  * Metadata Exporter - Entity History (Collate): Export complete change tracking to data warehouses for custom dashboarding, running within customer networks
  * Test Case Import/Export: Bulk operations on data quality tests at table and multi-table levels
  * Data Contracts at Data Product Level: Define contracts once at data product level with automatic inheritance to all assets for Semantics, Terms of Use, Security and SLAs.
  * Distributed Search Indexing: Multiple application servers share indexing workload for improved scalability
  * Data Product Input/Output Ports: Support port specifications with lineage visualization for data flow
  * Timezone-Aware Freshness Tests: Set specific timezones on freshness tests to prevent UTC misalignment issues
  * SQL Studio - Postgres & Redshift Support (Collate): Adds Postgres and Redshift to existing Snowflake, Trino, and BigQuery support
  * Snowflake Dynamic Table System Metrics: Support for INSERT, UPDATE, DELETE metrics in profiler
  * Column Custom Properties: Side panel drawer interface with improved navigation.

  ## Breaking Changes

  ### OpenSearch/Elasticsearch Client have been upgraded — the Elasticsearch client to 9.x and the OpenSearch client to 3.x. Elasticsearch minimum is 9.0.0 (recommended 9.3.0), OpenSearch minimum is 3.0.0 (recommended 3.3.0)

  ### Data Contract Schema Changes

  Security, SLAs and Terms of Use can now be inherited from the Data Product's Data Contract. To allow for this, we've added the 'inherited' property to Security and SLAs, and converted 'termsOfUse' from a simple Markdown field to an object that holds both the markdown information and the inheritance flag.

  ### Helm

  * **Updated Airflow section**

  From [here](https://github.com/open-metadata/openmetadata-helm-charts/pull/436), the 'pipelineServiceClientConfig' key, used to host directly Airflow configuration. Now we support also a native k8s orchestration engine, so we've added a ''pipelineServiceClientConfig'.type' key to switch between "airflow" or "k8s", and moved orchestrator-specific configurations into another nested level: "'pipelineServiceClientConfig.airflow" and "'pipelineServiceClientConfig.k8s".

  **Full Changelog**: [link](https://github.com/open-metadata/OpenMetadata/compare/1.11.11-release...1.12.1-release)
</Update>
