-
Notifications
You must be signed in to change notification settings - Fork 107
chore(hive): vendor Hive 3.1 metastore + fb303 Thrift IDL #694
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,3 +3,8 @@ Copyright 2024-2026 The Apache Software Foundation | |
|
|
||
| This product includes software developed at | ||
| The Apache Software Foundation (http://www.apache.org/). | ||
|
|
||
| Third-party Thrift IDLs vendored under third_party/hive_metastore/ are | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. IIUC, ASF projects are exempted here. cc expert @jbonofre |
||
| copies of upstream Apache projects (Apache Hive, Apache Thrift) and are | ||
| distributed under the Apache License, Version 2.0. See | ||
| third_party/hive_metastore/NOTICE for attribution details. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| Apache Iceberg C++ — Vendored Hive Metastore Thrift IDL | ||
| Copyright 2026 The Apache Software Foundation | ||
|
|
||
| This directory contains vendored Thrift interface definitions used to | ||
| generate the C++ Hive Metastore (HMS) client consumed by the | ||
| `iceberg_hive` library. The interface files are sourced verbatim from | ||
| upstream Apache projects (only trailing whitespace and final newlines | ||
| were normalized by the repository's pre-commit hooks) and remain under | ||
| the Apache License, Version 2.0 (see LICENSE in the repository root). | ||
|
|
||
| Vendored sources | ||
| ================ | ||
|
|
||
| * hive_metastore.thrift | ||
| Apache Hive 3.1 standalone-metastore. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why this specific version? How do we want to upgrade or maintain multiple versions in the future?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good question. I selected Hive 3.1.3 because it is a mature and widely deployed HMS For future maintenance, I propose keeping a single vendored IDL pinned to an If future Hive releases introduce incompatible RPC changes, we can add narrowly |
||
| Source: https://github.com/apache/hive/blob/branch-3.1/standalone-metastore/src/main/thrift/hive_metastore.thrift | ||
| Copyright (c) The Apache Software Foundation. | ||
|
|
||
| * share/fb303/if/fb303.thrift | ||
| Apache Thrift `contrib/fb303` (the Facebook fb303 management | ||
| service IDL, transitively included by hive_metastore.thrift). | ||
| Source: https://github.com/apache/thrift/blob/master/contrib/fb303/if/fb303.thrift | ||
| Originally developed at Facebook, Inc. and contributed to the | ||
| Apache Software Foundation under the Apache License, Version 2.0. | ||
|
|
||
| Both files retain their original Apache 2.0 license headers in-place. | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we rename
third_partytothirdpartywhich is more widely used?