OIiveirra opened a new pull request, #69527:
URL: https://github.com/apache/doris/pull/69527

   ### What problem does this PR solve?
   
   Issue Number: N/A
   
   Related PR: #69526
   
   Problem Summary: LOCAL TVF and FILE TVF with local storage currently remains 
available without explicit startup opt-in. Add `enable_local_tvf=false` and 
reject use at the LOCAL constructor before property parsing, backend selection, 
or file access. Setting it to true restores this branch's existing behavior.
   
   ## Summary
   
   ```text
   LOCAL / FILE-local → startup opt-in check → existing processing
   ```
   
   Dedicated regression deployments opt in to retain their existing LOCAL 
coverage.
   
   ### Release note
   
   LOCAL TVF and FILE TVF with local storage is disabled by default. Set 
`enable_local_tvf=true` in `fe.conf` on every query-serving FE and restart 
those FEs to restore the existing behavior. The setting is not runtime-mutable.
   
   ## Evidence
   
   - **Before:** LOCAL construction proceeded directly into existing processing.
   - **After:** Disabled LOCAL/FILE-local access is rejected before 
file-service interaction; explicit opt-in reaches existing processing. 
Non-local FILE/S3 delegation remains available.
   - 7 focused FE unit tests passed, with zero failures or skips.
   - Focused Checkstyle passed for the changed Java files.
   - Private branch-4.1 FE: 22 real SQL checks passed across default-disabled 
and restart-enabled profiles (LOCAL/FILE, CSV/Lance, SELECT/EXPLAIN, 
ordinary/admin users, and startup-only configuration); the private FE was 
stopped. Runtime SQL verification was on branch-4.1; this branch was verified 
by its focused unit tests and Checkstyle.
   - SQL regression coverage added for SELECT and EXPLAIN under either 
configuration state; the Groovy runner was not executed locally.
   
   ### Check List (For Author)
   
   - Test:
       - [x] Unit Test
       - [x] Manual test (private FE SQL validation described above)
   - Behavior changed:
       - [x] Yes. Local TVF access requires startup opt-in.
   - Does this need documentation:
       - [x] Yes. Default and opt-in are documented in the release note above.
   
   ## Merge Danger
   
   **Door:** Two-way; explicit startup opt-in restores existing behavior.
   
   **Blast Radius:** LOCAL TVF consumers, including FILE with local storage.
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to