[
https://issues.apache.org/jira/browse/SENTRY-1582?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vamsee Yarlagadda updated SENTRY-1582:
--------------------------------------
Attachment: (was: SENTRY-1541.v3.patch)
> Comments to clarify the intent of string manipulation methods in
> SentryStore.java
> ---------------------------------------------------------------------------------
>
> Key: SENTRY-1582
> URL: https://issues.apache.org/jira/browse/SENTRY-1582
> Project: Sentry
> Issue Type: Improvement
> Components: Sentry
> Affects Versions: 1.8.0, sentry-ha-redesign
> Reporter: Vamsee Yarlagadda
> Assignee: Vamsee Yarlagadda
> Attachments: SENTRY-1582.v1.patch
>
>
> The SentryStore.toSentryPrivilege() function:
> {code}
> private TSentryPrivilege toSentryPrivilege(TSentryAuthorizable
> tAuthorizable)
> throws SentryInvalidInputException {
> TSentryPrivilege tSentryPrivilege = new TSentryPrivilege();
> tSentryPrivilege.setDbName(fromNULLCol(tAuthorizable.getDb()));
> tSentryPrivilege.setServerName(fromNULLCol(tAuthorizable.getServer()));
> tSentryPrivilege.setTableName(fromNULLCol(tAuthorizable.getTable()));
> tSentryPrivilege.setColumnName(fromNULLCol(tAuthorizable.getColumn()));
> tSentryPrivilege.setURI(fromNULLCol(tAuthorizable.getUri()));
> PrivilegeScope scope;
> if (!isNULL(tSentryPrivilege.getColumnName())) {
> scope = PrivilegeScope.COLUMN;
> } else if (!isNULL(tSentryPrivilege.getTableName())) {
> scope = PrivilegeScope.TABLE;
> } else if (!isNULL(tSentryPrivilege.getDbName())) {
> scope = PrivilegeScope.DATABASE;
> } else if (!isNULL(tSentryPrivilege.getURI())) {
> scope = PrivilegeScope.URI;
> } else {
> scope = PrivilegeScope.SERVER;
> }
> tSentryPrivilege.setPrivilegeScope(scope.name());
> tSentryPrivilege.setAction(AccessConstants.ALL);
> return tSentryPrivilege;
> }
> {code}
> Note that it blindly copies all fields from the source, replacing null with
> empty strings and both itself and other consumers downstream do not know
> which fields were actually set and which were not. Instead it should just
> clone fields that were set.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)