This is an automated email from the ASF dual-hosted git repository.

lauraxia pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino-site.git


The following commit(s) were added to refs/heads/main by this push:
     new 4e040022e Add release notes for Apache Gravitino 1.2.0 (#120)
4e040022e is described below

commit 4e040022eac0f475d4d7c82d289e12a09b1fb933
Author: Yuhui <[email protected]>
AuthorDate: Tue Mar 17 15:08:40 2026 +0800

    Add release notes for Apache Gravitino 1.2.0 (#120)
---
 blog/2026-03-13-gravitino-1-2-0-release-notes.mdx | 201 ++++++++++++++++++++++
 blog/authors.yml                                  |   5 +
 2 files changed, 206 insertions(+)

diff --git a/blog/2026-03-13-gravitino-1-2-0-release-notes.mdx 
b/blog/2026-03-13-gravitino-1-2-0-release-notes.mdx
new file mode 100644
index 000000000..62eb04cc4
--- /dev/null
+++ b/blog/2026-03-13-gravitino-1-2-0-release-notes.mdx
@@ -0,0 +1,201 @@
+---
+title: Apache Gravitino 1.2.0 
+slug: gravitino-1-2-0-release-notes
+authors: [Hui Yu]
+tags: [apache,gravitino,metadata,multicloud,model,security,government]
+---
+
+Apache Gravitino 1.2.0 has been released\! This release introduces major new 
capabilities including a new Table Maintenance Service (TMS), a new ClickHouse 
catalog, end-to-end UDF management, authorization for Iceberg view operation, a 
redesigned Web UI, and broad improvements across connectors, authorization, and 
clients.
+
+**Release Date:** 2026-03-13 **Previous Version:** 1.1.0 (2025-12-16)
+
+## Highlights
+
+- **Table Maintenance Service (TMS) foundational framework** — Data platforms 
can now shift from reactive firefighting to proactive table health. Gravitino 
analyzes your tables and automatically schedules the right maintenance 
operations, at the right times.  
+- **ClickHouse catalog** — Teams running real-time analytics on ClickHouse can 
now govern it alongside their lakehouse, with one metadata layer for both 
streaming and batch workloads.  
+- **Scan planning offload** — Query engines like DuckDB and Spark can now 
offload scan planning to Gravitino's IRC server, reducing query latency and 
client-side complexity — making Gravitino a more capable catalog server for the 
growing Iceberg ecosystem.  
+- **Ecosystem reach** — Multi-version Trino connector (435–478), Flink user 
authentication, and multi-cluster fileset support and Web UI v2 broaden 
Gravitino's integration surface across the modern data stack.
+
+---
+
+## New Features
+
+1. **Table Maintenance Service (TMS)** 
[\#9546](https://github.com/apache/gravitino/issues/9546), 
[\#9652](https://github.com/apache/gravitino/issues/9652), 
[\#9653](https://github.com/apache/gravitino/issues/9653), 
[\#9654](https://github.com/apache/gravitino/issues/9654), 
[\#9983](https://github.com/apache/gravitino/issues/9983), 
[\#9984](https://github.com/apache/gravitino/issues/9984), 
[\#9985](https://github.com/apache/gravitino/issues/9985), 
[\#9986](https://github.com/apache/gravi [...]
+     
+   Maintaining a healthy lakehouse table requires ongoing maintenance work — 
compaction, rewriting data files, and expiring snapshot cleanup. Gravitino 
1.2.0 introduces the Table Maintenance Service (TMS), which analyzes table 
statistics and automatically schedules the right maintenance operations at the 
right time. This allows data platforms to move from reactive firefighting to 
proactive table health management.  
+     
+2. **ClickHouse Catalog** 
[\#9738](https://github.com/apache/gravitino/issues/9738), 
[\#9754](https://github.com/apache/gravitino/issues/9754), 
[\#9755](https://github.com/apache/gravitino/issues/9755), 
[\#9756](https://github.com/apache/gravitino/issues/9756), 
[\#9820](https://github.com/apache/gravitino/issues/9820), 
[\#9865](https://github.com/apache/gravitino/issues/9865)  
+     
+   ClickHouse is widely adopted for large-scale real-time analytics. Gravitino 
1.2.0 introduces a full-featured ClickHouse catalog with full DDL support 
including distributed and partitioned cluster modes.  
+     
+3. **User-Defined Function (UDF) Management** 
[\#9525](https://github.com/apache/gravitino/issues/9525), 
[\#9527](https://github.com/apache/gravitino/issues/9527), 
[\#9528](https://github.com/apache/gravitino/issues/9528), 
[\#9529](https://github.com/apache/gravitino/issues/9529), 
[\#9530](https://github.com/apache/gravitino/issues/9530), 
[\#9531](https://github.com/apache/gravitino/issues/9531), 
[\#9532](https://github.com/apache/gravitino/issues/9532), 
[\#9561](https://github.com/apach [...]
+     
+   Teams can now centrally register, update, and govern UDFs, and Spark can 
automatically discover and invoke these functions through Gravitino's catalog 
interface. Gravitino 1.2.0 introduces end-to-end UDF management: Java API, 
server-side REST interface, relational storage backend, Java client support, 
Spark FunctionCatalog integration, Python client, Web UI management for visual 
browsing/creation, and complete documentation with OpenAPI specifications.  
+     
+4. **Iceberg REST Catalog: Support scan planning cache** 
[\#9048](https://github.com/apache/gravitino/issues/9048)  
+
+   Adding a cache for scan planning improves performance by caching the 
results of the scan planning phase, which determines which data files need to 
be read for a query. Since scan planning involves reading and parsing Iceberg 
metadata and manifest files, caching avoids repeating this expensive work for 
similar queries. As a result, it reduces metadata I/O, lowers query latency, 
and decreases load on object storage and the planning service.  
+     
+5. **Authorization support for Iceberg REST catalog view operations** 
[\#9744](https://github.com/apache/gravitino/issues/9744), 
[\#9745](https://github.com/apache/gravitino/issues/9745), 
[\#9746](https://github.com/apache/gravitino/issues/9746), 
[\#9747](https://github.com/apache/gravitino/issues/9747), 
[\#9915](https://github.com/apache/gravitino/issues/9915)  
+     
+   Views are an important abstraction for data access control but have long 
been a governance blind spot. Gravitino 1.2.0 manages Iceberg views as 
first-class entities, introducing view management, generic storage, view-level 
permissions, and full authorization support for IRC view operations. This 
enables teams to govern views alongside tables and apply fine-grained access 
control policies to view access while maintaining consistent enforcement of 
underlying table permissions.  
+     
+6. **Generic Lakehouse Catalog: Delta Lake External Table Support** 
[\#9647](https://github.com/apache/gravitino/issues/9647)  
+     
+   Delta Lake is one of the most widely deployed open table formats. Gravitino 
now supports registering and managing external Delta tables through the generic 
lakehouse catalog, enabling unified governance for Delta alongside Iceberg, 
Hudi, and other formats without data migration. This allows organizations to 
manage Delta Lake workloads through an open catalog architecture, reducing 
dependence on proprietary catalog services such as Unity Catalog.  
+     
+7. **Trino Connector Multi-version Support** 
[\#9718](https://github.com/apache/gravitino/issues/9718), 
[\#9719](https://github.com/apache/gravitino/issues/9719), 
[\#9894](https://github.com/apache/gravitino/issues/9894), 
[\#9952](https://github.com/apache/gravitino/issues/9952), 
[\#9961](https://github.com/apache/gravitino/issues/9961), 
[\#9964](https://github.com/apache/gravitino/issues/9964), 
[\#10091](https://github.com/apache/gravitino/issues/10091)  
+     
+   Gravitino now supports Trino versions 435 through 478, with a connector 
architecture designed to maintain compatibility with future Trino releases.  
+     
+8. **Multi-cluster Fileset Support** 
[\#9568](https://github.com/apache/gravitino/issues/9568), 
[\#9312](https://github.com/apache/gravitino/issues/9312)  
+     Production data platforms often span multiple storage clusters. Through 
GVFS multi-cluster filesets, Gravitino now allows a single fileset to reference 
storage locations across different clusters.  
+     
+9. **Flink Connector: User Authentication** 
[\#9564](https://github.com/apache/gravitino/issues/9564)  
+     The Gravitino Flink connector now supports user authentication, enabling 
secure access to Gravitino-managed metadata from Flink jobs.  
+
+10. **Web UI v2 Reconstruction** 
[\#9758](https://github.com/apache/gravitino/issues/9758)
+    The Gravitino Web UI now supports managing ClickHouse catalogs and UDFs, 
along with improved views for tags, policies, and task templates. The updated 
interface provides a more streamlined experience for navigating governance 
resources. Web v1 remains available during the transition period.
+
+---
+
+## Improvements
+
+### Core & Server
+
+- Block non-cascading schema deletions when topics still exist 
([\#9078](https://github.com/apache/gravitino/issues/9078))  
+- Cache non-existent relational data to avoid repeated lookups 
([\#9799](https://github.com/apache/gravitino/issues/9799))  
+- Optimize in-use status checks for catalogs and metalakes 
([\#9586](https://github.com/apache/gravitino/issues/9586))  
+- Improve authorization performance by skipping overhead when plugin is empty 
([\#9170](https://github.com/apache/gravitino/issues/9170))  
+- Support renaming tables to a different schema in ManagedTableOperations 
([\#9477](https://github.com/apache/gravitino/issues/9477))  
+- Include generic lakehouse catalogs in managed entities for proper drop 
behavior ([\#9490](https://github.com/apache/gravitino/issues/9490))  
+- Add JDBC storage backend for partition statistics 
([\#9838](https://github.com/apache/gravitino/issues/9838))  
+- Make `gravitino-api` and related dependencies `compileOnly` in catalog 
modules ([\#10195](https://github.com/apache/gravitino/issues/10195))  
+- Optimize JDBC driver deregistration logic to avoid possible OOM 
([\#10253](https://github.com/apache/gravitino/issues/10253))
+
+### Authorization
+
+- Convert JCasbin internal map to a cache for improved performance 
([\#9770](https://github.com/apache/gravitino/issues/9770))  
+- Support preloading table metadata in batch for authorization checks 
([\#9802](https://github.com/apache/gravitino/issues/9802))  
+- Rename model privilege names to follow operation name conventions 
([\#9381](https://github.com/apache/gravitino/issues/9381))  
+- Support overriding privileges for roles 
([\#9269](https://github.com/apache/gravitino/issues/9269))  
+- Fileset supports credential vending with correct access privileges 
([\#9506](https://github.com/apache/gravitino/issues/9506))
+
+### Iceberg REST Catalog (IRC)
+
+- Upgrade Apache Iceberg to 1.10.1 
([\#9989](https://github.com/apache/gravitino/issues/9989))  
+- Optimize IRC catalog wrapper and entity cache expiry strategy 
([\#9782](https://github.com/apache/gravitino/issues/9782))  
+- Improve IRC table load performance under high concurrency with authorization 
enabled ([\#9765](https://github.com/apache/gravitino/issues/9765))  
+- IRC uses internal catalog fetcher instead of HTTP interface for better 
performance ([\#9825](https://github.com/apache/gravitino/issues/9825))  
+- IRC timely expires catalog wrapper cache 
([\#9966](https://github.com/apache/gravitino/issues/9966))  
+- Improve table load performance by tuning the cooperation between Iceberg 
service and Gravitino server 
([\#9277](https://github.com/apache/gravitino/issues/9277))  
+- Cross-Namespace Table Rename: Gravitino Iceberg catalog now supports 
renaming tables across different namespaces 
([\#9517](https://github.com/apache/gravitino/issues/9517))
+
+### Catalogs & Connectors
+
+- Support Paimon REST backend 
([\#9791](https://github.com/apache/gravitino/issues/9791))  
+- Support hash distribution in Paimon catalog 
([\#9731](https://github.com/apache/gravitino/issues/9731))  
+- Refactor Hive and Hudi catalogs to use the shared HiveClient 
([\#9459](https://github.com/apache/gravitino/issues/9459))  
+- Add support to skip catalog in Trino connector 
([\#9492](https://github.com/apache/gravitino/issues/9492))  
+- Flink connector supports generic Hive tables 
([\#9504](https://github.com/apache/gravitino/issues/9504))  
+- Spark connector supports `TableWritePrivilege` for Spark 3.5+ authorization 
([\#10181](https://github.com/apache/gravitino/issues/10181))  
+- Upgrade Kyuubi Hive connector from 1.10 to 1.11 
([\#10040](https://github.com/apache/gravitino/issues/10040))
+
+### OAuth & Authentication
+
+- Support JWT tokens with multiple audiences in the `aud` claim 
([\#9733](https://github.com/apache/gravitino/issues/9733))  
+- Support regex for user principal mapping in OAuth 
([\#9767](https://github.com/apache/gravitino/issues/9767))  
+- Allow JWKS validators to work without `serverUri` or `tokenPath` 
([\#9713](https://github.com/apache/gravitino/issues/9713))  
+- Enhance version parsing to support release candidate version strings 
([\#9482](https://github.com/apache/gravitino/issues/9482))
+
+### Clients
+
+- Add configurable HTTP connection pool settings for Gravitino client 
([\#9468](https://github.com/apache/gravitino/issues/9468))  
+- Allow disabling client-server version check via environment variable 
([\#9760](https://github.com/apache/gravitino/issues/9760))
+
+### Lance REST Service
+
+- Add Helm chart for deploying Lance REST server as a standalone service on 
Kubernetes ([\#9403](https://github.com/apache/gravitino/issues/9403))  
+- Add dataset version tracking in Lance REST `loadTable` and `createTable` 
([\#9792](https://github.com/apache/gravitino/issues/9792))  
+- Add documentation for Lance REST server setup and Spark/Ray integration 
([\#9169](https://github.com/apache/gravitino/issues/9169), 
[\#9622](https://github.com/apache/gravitino/issues/9622))  
+- Refine `createEmptyTable` semantics in Lance REST 
([\#9520](https://github.com/apache/gravitino/issues/9520))
+
+### Web UI
+
+- Add global banner to guide users to Web UI v2 
([\#9996](https://github.com/apache/gravitino/issues/9996))  
+- Support ClickHouse catalog management in Web UI v2 
([\#9865](https://github.com/apache/gravitino/issues/9865))  
+- Support associated roles view for tags, policies, and job templates 
([\#9807](https://github.com/apache/gravitino/issues/9807))
+
+---
+
+## Bug Fixes
+
+- Fix credential vending for filesets with multiple storage locations 
([\#9500](https://github.com/apache/gravitino/issues/9500))  
+- Fix IRC connection failure after idle timeout 
([\#9383](https://github.com/apache/gravitino/issues/9383))  
+- Fix tag association cache inconsistency 
([\#9635](https://github.com/apache/gravitino/issues/9635))  
+- Fix Iceberg migrate procedure failing with "table already exists" for JDBC 
catalogs ([\#9666](https://github.com/apache/gravitino/issues/9666))  
+- Fix clearing column comments in MySQL table ALTER operations 
([\#9694](https://github.com/apache/gravitino/issues/9694))  
+- Fix UnsupportedOperationException when updating model version aliases 
([\#9727](https://github.com/apache/gravitino/issues/9727))  
+- Fix table loading failure due to incorrect SQL in fetch column info 
([\#10034](https://github.com/apache/gravitino/issues/10034))  
+- Fix NoSuchEntityException in authorization when schema entity is not 
imported ([\#10055](https://github.com/apache/gravitino/issues/10055))  
+- Fix owner assignment failure due to unimported schema entity 
([\#9809](https://github.com/apache/gravitino/issues/9809))  
+- Fix Hive SerDe incompatibility between Gravitino Flink connector and native 
Flink client ([\#9508](https://github.com/apache/gravitino/issues/9508))  
+- Fix JDBC catalog column default value alteration 
([\#9816](https://github.com/apache/gravitino/issues/9816))  
+- Fix Trino connector distribution to include JARs for all supported versions 
([\#10139](https://github.com/apache/gravitino/issues/10139))  
+- Fix TMS built-in rewrite adapter resolution by template name 
([\#10311](https://github.com/apache/gravitino/issues/10311))  
+- Fix JDBC catalog pool size properties not being loaded on catalog creation 
([\#10284](https://github.com/apache/gravitino/issues/10284))  
+- Fix SLF4J provider not found error in Spark connector 3.3 
([\#6906](https://github.com/apache/gravitino/issues/6906))  
+- Fix PassThroughAuthorizer user verification logic blocking new user creation 
([\#9616](https://github.com/apache/gravitino/issues/9616))  
+- Fix IRC URL decoding for table names containing special characters 
([\#9936](https://github.com/apache/gravitino/issues/9936))  
+- Fix lazy authorization configuration check for IRC to allow server startup 
([\#9247](https://github.com/apache/gravitino/issues/9247))  
+- Fix `maxStatisticsPerUpdate` configuration for Lance partition storage 
([\#9650](https://github.com/apache/gravitino/issues/9650))
+
+---
+
+## Breaking Changes
+
+- **Dropped Python 3.9 Support** — Python 3.9 has reached end of life. The 
Gravitino Python client no longer supports this version. Users need to upgrade 
to Python 3.10 or higher. 
([\#10011](https://github.com/apache/gravitino/issues/10011))
+
+---
+
+## Acknowledgements
+
+Thanks to everyone who contributed to the 1.2.0 work — code, reviews, tests, 
issue triage, design, and feedback. Below is a consolidated list of contributor 
GitHub IDs extracted from issue and PR activity.
+
+- [Abyss-lord](https://github.com/Abyss-lord)
+- [agnes-xinyi-lu](https://github.com/agnes-xinyi-lu)
+- [AndreVale69](https://github.com/AndreVale69)
+- [bharos](https://github.com/bharos)
+- [cc5566](https://github.com/cc5566)
+- [chl-wxp](https://github.com/chl-wxp)
+- [danhuawang](https://github.com/danhuawang)
+- [diqiu50](https://github.com/diqiu50)
+- [echonesis](https://github.com/echonesis)
+- [FANNG1](https://github.com/FANNG1)
+- [fwonce](https://github.com/fwonce)
+- [hdygxsj](https://github.com/hdygxsj)
+- [hqbhoho](https://github.com/hqbhoho)
+- [jerryshao](https://github.com/jerryshao)
+- [joeyutong](https://github.com/joeyutong)
+- [josephperez3](https://github.com/josephperez3)
+- [LauraXia123](https://github.com/LauraXia123)
+- [liunaijie](https://github.com/liunaijie)
+- [mchades](https://github.com/mchades)
+- [paultanay](https://github.com/paultanay)
+- [Pranaykarvi](https://github.com/Pranaykarvi)
+- [qingwei727](https://github.com/qingwei727)
+- [qqqttt123](https://github.com/qqqttt123)
+- [raveendra11](https://github.com/raveendra11)
+- [roryqi](https://github.com/roryqi)
+- [sabashaikh4](https://github.com/sabashaikh4)
+- [SalmaneKhalili](https://github.com/SalmaneKhalili)
+- [shaofengshi](https://github.com/shaofengshi)
+- [simhani1](https://github.com/simhani1)
+- [sunxiaojian](https://github.com/sunxiaojian)
+- [tedyu](https://github.com/tedyu)
+- [tsungchih](https://github.com/tsungchih)
+- [youngyjd](https://github.com/youngyjd)
+- [yuqi1129](https://github.com/yuqi1129)
+
+<sub>Apache, Apache Flink, Apache Hive, Apache Hudi, Apache Iceberg, Apache 
Ranger, Apache Spark, Apache Paimon and Apache Gravitino are either registered 
trademarks or trademarks of the Apache Software Foundation in the United States 
and/or other countries.</sub>
+
diff --git a/blog/authors.yml b/blog/authors.yml
index 60a018abf..7cfb6ff23 100644
--- a/blog/authors.yml
+++ b/blog/authors.yml
@@ -45,3 +45,8 @@ Qi Yu:
   title: PMC Member
   url: https://github.com/yuqi1129/
   image_url: /img/authors/yuqi1129.jpeg
+Hui Yu:
+  name: Hui Yu
+  title: committer
+  url: https://github.com/diqiu50/
+  image_url: /img/authors/diqiu50.jpeg

Reply via email to