Doris-Breakwater opened a new pull request, #66594:
URL: https://github.com/apache/doris/pull/66594
### What problem does this PR solve?
Issue Number: None
Related PR: #66218
Problem Summary:
Dictionary refresh rebuilt its internal `INSERT ... SELECT` statement by
concatenating raw target and source object names. Identifier text containing
spaces, SQL syntax, or embedded backticks could therefore change the parsed
query structure instead of remaining an object name.
This change quotes and escapes every target and source identifier component
with the existing Nereids helper before reparsing the internal statement. It
also adds a parser-level unit test whose hostile-looking target/source names
contain embedded backticks and a fake `UNION ALL`; the test verifies that the
original name parts survive and that the query has exactly one source relation.
### Release note
Fix dictionary refresh for quoted object names.
### Check List (For Author)
- Test
- [ ] Regression test
- [ ] Unit Test
- [ ] Manual test
- [x] Unit test added but not run locally because
`thirdparty/installed/bin/protoc` is unavailable in the worktree; PR CI is the
executable verification path
- Behavior changed:
- [x] Yes. Dictionary load SQL now treats all metadata names strictly as
identifiers.
- Does this need documentation?
- [x] No.
--
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]