JingsongLi commented on PR #942: URL: https://github.com/apache/paimon-rust/pull/942#issuecomment-5831567120
Requirement fit: SUPPORTED; the SQL procedure provides a real end-to-end branch operation. However, **P1: reject path separators in branch names before exposing rename via SQL.** `BranchManager::validate_branch_name` accepts `foo/bar`. I reproduced this on the PR head: create branches `b2` and `foo`, then run `CALL sys.rename_branch(table => 'test_db.t1', from_branch => 'b2', to_branch => 'foo/bar')`. The call succeeds, the old branch is gone, but `SELECT * FROM t1$branches WHERE branch_name = 'foo/bar'` returns zero rows: the directory was moved under `branch-foo/bar` and is no longer listed as a branch. This can silently hide a branch and its data from normal discovery. Please reject `/` (and `..` path components) at the shared branch-name validation boundary, and add a SQL regression asserting the call fails and the original branch remains visible. The existing normal rename integration test passes; all 14 CI checks are green, but they do not cover this case. I ran the reproduc er in a disposable local test directory and restored it afterward. -- 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]
