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

zhangstar333 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new d454100765c [feature](lance) Add thrift definitions for Lance index 
entries inspection (#67275)
d454100765c is described below

commit d454100765c63e62dca3d2d3e17b873ef668a634
Author: kid <[email protected]>
AuthorDate: Mon Aug 31 11:02:48 2026 +0800

    [feature](lance) Add thrift definitions for Lance index entries inspection 
(#67275)
    
    ### What problem does this PR solve?
    
    Issue Number: #66497
    
    Related PR: #66671 (branch-4.1)
    
    Problem Summary:
    
    PR #66671 on `branch-4.1` adds the read-only `lance_index_entries`
    table-valued function — delivery slice 2 of the Lance index lifecycle
    design (#66497) — and wires it through the BE meta-scanner
    (`TMetaScanRange`) and the FE master schema-table service
    (`TFetchSchemaTableDataRequest`). That feature requires four thrift
    additions:
    
    - `TMetadataType.LANCE_INDEX_ENTRIES` (Types.thrift)
    - `TLanceIndexMetadataParams {catalog, database, table}`
    (PlanNodes.thrift)
    - `TMetaScanRange.lance_index_params`, field 18 (PlanNodes.thrift)
    - `TMetadataTableRequestParams.lance_index_metadata_params`, field 16
    (FrontendService.thrift)
    
    Thrift field ids and enum values are a wire contract shared by all
    maintained branches: once branch-4.1 clusters run with these
    assignments, master must never assign the same ids to anything else, and
    mixed-version clusters during rolling upgrades must interpret them
    identically (same precedent as the `reserved_field_15` reservation in
    `TMetadataTableRequestParams`). This PR lands the same definitions on
    master so the ids stay reserved and aligned, as requested in the #66671
    review.
    
    Notes on the assignments:
    
    - `TMetadataType = 14` is already `STREAMS` on master, so
    `LANCE_INDEX_ENTRIES` takes **15** here. #66671 is being aligned to 15
    as well before it merges, so both branches agree on the value; 14
    remains STREAMS-only.
    - Field 18 (`TMetaScanRange`) and field 16
    (`TMetadataTableRequestParams`) match the branch-4.1 assignments
    exactly; both are unused on master today.
    - This is an IDL-only change: no FE/BE code on master references these
    definitions yet, so there is no behavior change on master. The full
    feature code lands on master with the later lifecycle slices tracked in
    #66497.
    
    ### Release note
    
    None - thrift IDL compatibility definitions only; no behavior change.
---
 gensrc/thrift/FrontendService.thrift | 1 +
 gensrc/thrift/PlanNodes.thrift       | 8 ++++++++
 gensrc/thrift/Types.thrift           | 3 +++
 3 files changed, 12 insertions(+)

diff --git a/gensrc/thrift/FrontendService.thrift 
b/gensrc/thrift/FrontendService.thrift
index 9f197d691f8..90f4a4b41d0 100644
--- a/gensrc/thrift/FrontendService.thrift
+++ b/gensrc/thrift/FrontendService.thrift
@@ -955,6 +955,7 @@ struct TMetadataTableRequestParams {
   // Reserved for downstream field `current_roles` to keep thrift field ids
   // wire-compatible across maintained branches. Do not reuse this id.
   15: optional set<string> reserved_field_15
+  16: optional PlanNodes.TLanceIndexMetadataParams lance_index_metadata_params
 }
 
 struct TSchemaTableRequestParams {
diff --git a/gensrc/thrift/PlanNodes.thrift b/gensrc/thrift/PlanNodes.thrift
index f3410696977..af4b9c3eb68 100644
--- a/gensrc/thrift/PlanNodes.thrift
+++ b/gensrc/thrift/PlanNodes.thrift
@@ -796,6 +796,13 @@ struct TPartitionBoundary {
   6: optional bool range_end_inclusive = false
 }
 
+// Identifies a Lance table for read-only physical index entry inspection.
+struct TLanceIndexMetadataParams {
+  1: optional string catalog
+  2: optional string database
+  3: optional string table
+}
+
 struct TMetaScanRange {
   1: optional Types.TMetadataType metadata_type
   2: optional TIcebergMetadataParams iceberg_params // deprecated
@@ -816,6 +823,7 @@ struct TMetaScanRange {
   15: optional string serialized_table;
   16: optional list<string> serialized_splits;
   17: optional TParquetMetadataParams parquet_params;
+  18: optional TLanceIndexMetadataParams lance_index_params;
 }
 
 // Specification of an individual data range which is held in its entirety
diff --git a/gensrc/thrift/Types.thrift b/gensrc/thrift/Types.thrift
index 0625ba08573..006c553f21c 100644
--- a/gensrc/thrift/Types.thrift
+++ b/gensrc/thrift/Types.thrift
@@ -767,6 +767,9 @@ enum TMetadataType {
   PAIMON = 12,
   PARQUET = 13,
   STREAMS = 14,
+  // Also assigned on branch-4.1 for Lance physical index entries inspection.
+  // Keep the value aligned across maintained branches. Do not renumber.
+  LANCE_INDEX_ENTRIES = 15,
 }
 
 // deprecated


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to