[
https://issues.apache.org/jira/browse/KUDU-3639?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17925935#comment-17925935
]
ASF subversion and git services commented on KUDU-3639:
-------------------------------------------------------
Commit 7dbf89e9ecff1c05e78e522fc77c409387b88ca5 in kudu's branch
refs/heads/master from gabriellalotz
[ https://gitbox.apache.org/repos/asf?p=kudu.git;h=7dbf89e9e ]
KUDU-3639 Add REST-compatible table operation functions
Added new functions to CatalogManager (CreateTableWithUser,
DeleteTableWithUser, and AlterTableWithUser) to support the REST API
implementation. These functions accept a username parameter instead of
relying on RpcContext, making them suitable for contexts where
RpcContext is unavailable.
Shared logic between the RPC-based and REST-compatible functions has
been refactored into reusable helper methods to minimize code
duplication.
Change-Id: If52359603e3aa8af2dedc41ecc5eb78d03151fe5
Reviewed-on: http://gerrit.cloudera.org:8080/22420
Tested-by: Marton Greber <[email protected]>
Reviewed-by: Marton Greber <[email protected]>
Reviewed-by: Zoltan Martonka <[email protected]>
> Implement {Delete/Alter/Create}Table Functions Without RpcContext
> -----------------------------------------------------------------
>
> Key: KUDU-3639
> URL: https://issues.apache.org/jira/browse/KUDU-3639
> Project: Kudu
> Issue Type: New Feature
> Reporter: Gabriella Lotz
> Assignee: Gabriella Lotz
> Priority: Major
>
> The CatalogManager::\{DeleteTableRpc, CreateTable, AlterTableRpc} functions
> currently rely on rpc::RpcContext to extract the username of the requestor
> for authorization. However, in the REST catalog API implementation,
> RpcContext is not used, and only the username is directly available.
> To support REST API functionality, new functions are required that replace
> RpcContext with an explicitly provided username while maintaining the same
> core logic for table operations.
> Requirements:
> * Create new functions:
> ** CatalogManager::DeleteTableWithUser
> ** CatalogManager::AlterTableWithUser
> ** CatalogManager::CreateTableWithUser
> * These functions should:
> ** Accept a username parameter instead of rpc::RpcContext.
> ** Implement the same authorization, logging, and HMS integration logic as
> their corresponding RPC versions (DeleteTableRpc, AlterTableRpc, and
> CreateTable).
> ** Refactor shared logic between the existing RPC functions and the new
> \{Delete/Alter/Create}TableWithUser functions into reusable helper functions
> to minimize code duplication.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)