HMS 4.x metadata transformer silently rewrites schema locations
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 48/100
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện hành vi metastore của Hive 4.0.0 với Trino, tập trung vào việc đọc vị trí schema và các bảng được tạo thông qua Hive connector. Kiểm tra cách operator cấu hình metastore.metadata.transformer.class và xác minh liệu việc tắt transformer có giữ nguyên các vị trí tường minh và hành vi của managed table hay không. Hoàn tất khi cấu hình được xử lý phù hợp và cả hai lỗi đã báo cáo đều được giải quyết hoặc được ngăn chặn một cách rõ ràng.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Affected Stackable version
26.7
Affected Apache Hive version
4.0.0
Current and expected behavior
Hive 4 introduced metastore.metadata.transformer.class and defaults it to org.apache.hadoop.hive.metastore.MetastoreDefaultTransformer.
Against a metastore used by Trino, the transformer causes two distinct failures:
- Schema locations are silently rewritten on read. A schema created with an explicit
locationunderhive.metastore.warehouse.diris stored correctly inDBS, but every read through the Thrift API returns<warehouse>/<dbname>.dbinstead. Trino's Iceberg connector derives new table locations from that value, so tables land in the wrong prefix. CREATE TABLEthrough the Trino Hive connector is converted fromMANAGED_TABLEtoEXTERNAL_TABLE. Trino then refuses to write to its own table withCannot write to non-managed Hive table, soINSERT INTOis broken for every table created through the Hive connector.
Possible solution
For our use cases, disabling the transformer may be the right choice here.
Workaround
Disable the transformer through the metastore's config overrides. Note the value is a single
space, not an empty string:
spec:
metastore:
configOverrides:
hive-site.xml:
metastore.metadata.transformer.class: " "
Additional context
No response
Environment
k8s: v1.35.1 - also seen on OpenShift environments
Would you like to work on fixing this bug?
None
- Ngôn ngữ chính
- Rust
- Star
- 29
- Fork
- 2
- Merge trung bình
- 1 ngày 19 giờ
- Pull request đã merge (30 ngày)
- 12
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của stackabletech/hive-operator
-
customer-request
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 65/100
stackabletech/hive-operator#717 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 30/100
stackabletech/hive-operator#678 · 1 reaction ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
stackabletech/hive-operator#630 · 1 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
stackabletech/hive-operator#573 ·
-
customer-request
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
stackabletech/hive-operator#568 ·
Tất cả issue của stackabletech/hive-operator
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
gitbutlerapp/gitbutler#15998 · 1 bình luận ·
-
bug triage:deciding
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
open-telemetry/otel-arrow#4132 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100