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

CalvinKirs 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 4a57dd0bc41 [fix](fe) Align schema table wire IDs with maintained 
branches (#68821)
4a57dd0bc41 is described below

commit 4a57dd0bc418d179130560a1113ab1ed7331fcf6
Author: Calvin Kirs <[email protected]>
AuthorDate: Wed Oct 14 15:22:18 2026 +0800

    [fix](fe) Align schema table wire IDs with maintained branches (#68821)
    
    ### What problem does this PR solve?
    
    Issue Number: N/A
    
    Problem Summary:
    
    `TSchemaTableName` assigns different meanings to the same wire IDs on
    master and the maintained release branches. Master sends `13` for
    `DATABASE_PROPERTIES` and `14` for `AUTHENTICATION_INTEGRATIONS`, while
    branch-4.1 and branch-4.2 interpret them as
    `AUTHENTICATION_INTEGRATIONS` and `ROLE_MAPPINGS`. Since Thrift
    serializes enums as integers, these requests can silently dispatch to
    the wrong information_schema table.
    
    Align master with the release branches by assigning
    `AUTHENTICATION_INTEGRATIONS = 13` and `ROLE_MAPPINGS = 14`. Move
    `DATABASE_PROPERTIES` to `17`, which is unused on both branches. Keep
    every other master ID unchanged.
    
    Latest remote definitions verified:
    
    | Member / range | branch-4.1 | branch-4.2 | Fixed master |
    | --- | --- | --- | --- |
    | Existing members 1–12 | 1–12 | 1–12 | 1–12 |
    | AUTHENTICATION_INTEGRATIONS | 13 | 13 | 13 |
    | ROLE_MAPPINGS | 14 | 14 | 14 |
    | TABLE_STREAMS | Absent | Absent | 15 |
    | TABLE_STREAM_CONSUMPTION | Absent | Absent | 16 |
    | DATABASE_PROPERTIES | Absent | Absent | 17 |
    | EXTENSIONS | Absent | 18 | 18 |
    | Remaining master members | Absent | Absent | 19–22 |
    
    branch-4.1 uses IDs 1–14. branch-4.2 uses IDs 1–14 and 18, leaving 15–17
    unused. Neither branch requires a change.
    
    ### Release note
    
    Align information_schema request IDs with branch-4.1 and branch-4.2.
    Upgrading an uncorrected master build requires coordinated FE/BE updates
    because its conflicting enum values have changed.
    
    ### Check List (For Author)
    
    - Test
        - [ ] Regression test
        - [ ] Unit Test
        - [x] Manual test
    
    Validation performed:
    - Compared every enum member against `rich/branch-4.0`,
    `rich/branch-4.1` and `rich/branch-4.2`; all shared IDs match. Confirmed
    ID 17 and DATABASE_PROPERTIES are absent on branch-4.1/branch-4.2.
    - `bash generated-source.sh` passed; the generated C++ enum matches the
    corrected IDL.
    - `cd fe && mvn -pl fe-thrift validate` passed with zero Checkstyle
    violations.
    - `git diff --check` passed.
---
 gensrc/thrift/FrontendService.thrift | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gensrc/thrift/FrontendService.thrift 
b/gensrc/thrift/FrontendService.thrift
index 83d6b195fac..e22c1be7b87 100644
--- a/gensrc/thrift/FrontendService.thrift
+++ b/gensrc/thrift/FrontendService.thrift
@@ -920,6 +920,7 @@ struct TInitExternalCtlMetaResult {
 }
 
 enum TSchemaTableName {
+  // Wire ids must stay consistent across maintained branches. Do not renumber 
or reuse ids.
   // BACKENDS = 0,
   METADATA_TABLE = 1, // tvf
   ACTIVE_QUERIES = 2, // db information_schema's table
@@ -934,11 +935,11 @@ enum TSchemaTableName {
   PARTITIONS = 10,
   VIEW_DEPENDENCY = 11,
   SQL_BLOCK_RULE_STATUS = 12,
-  DATABASE_PROPERTIES = 13,
-  AUTHENTICATION_INTEGRATIONS = 14,
+  AUTHENTICATION_INTEGRATIONS = 13,
+  ROLE_MAPPINGS = 14,
   TABLE_STREAMS = 15,
   TABLE_STREAM_CONSUMPTION = 16,
-  ROLE_MAPPINGS = 17,
+  DATABASE_PROPERTIES = 17,
   EXTENSIONS = 18,
   TSO_STATUS = 19,
   STATISTICS = 20,


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

Reply via email to