Commit e92ec63
LAV-3070: match table and hybrid-table privilege grants (#3452)
Capture all 16 indexed ON TABLE grant/revoke cases against Snowflake Cloud.
All candidates are accepted, including SELECT ERROR TABLE; the existing
ON HYBRID TABLE rejection remains unchanged. Parse SELECT ERROR TABLE as
a Snowflake privilege so its grant reaches the existing catalog and RBAC
projection.
Co-authored-by: Sabir Akhadov <sabir.akhadov@localstack.cloud>
## Test matrix
TABLE APPLYBUDGET × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-applybudget]
TABLE DELETE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-delete]
TABLE EVOLVE SCHEMA × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-evolve_schema]
TABLE INSERT × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-insert]
TABLE REFERENCES × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-references]
TABLE SELECT × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-select]
TABLE SELECT ERROR TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-select_error_table]
TABLE TRUNCATE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-truncate]
TABLE UPDATE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[table-update]
HYBRID TABLE APPLYBUDGET via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-applybudget]
HYBRID TABLE DELETE via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-delete]
HYBRID TABLE INSERT via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-insert]
HYBRID TABLE REFERENCES via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-references]
HYBRID TABLE SELECT via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-select]
HYBRID TABLE TRUNCATE via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-truncate]
HYBRID TABLE UPDATE via ON TABLE × grant/revoke -> tests/queries/access_control/test_table_privilege_matrix.py::test_table_privilege_matrix[hybrid_table-update]
ON HYBRID TABLE × grant/revoke error -> tests/queries/access_control/test_hybrid_table_grants.py::test_hybrid_table_object_kind_rejected
Cloud accepted every indexed candidate; there are no rejected matrix rows
requiring an o1r xfail.
Checks: make check; both compat files; make test-vendored-sqlparser;
.spiral/check.sh.
Co-authored-by: spiral <spiral@localhost>
Co-authored-by: Sabir Akhadov <sabir.akhadov@localstack.cloud>1 parent 758120c commit e92ec63
1 file changed
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20631 | 20631 | | |
20632 | 20632 | | |
20633 | 20633 | | |
| 20634 | + | |
20634 | 20635 | | |
20635 | 20636 | | |
20636 | 20637 | | |
| |||
0 commit comments