[
https://issues.apache.org/jira/browse/SENTRY-2166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Na Li reassigned SENTRY-2166:
-----------------------------
Assignee: (was: Na Li)
> Privilege is not updated for table rename during full snapshot
> --------------------------------------------------------------
>
> Key: SENTRY-2166
> URL: https://issues.apache.org/jira/browse/SENTRY-2166
> Project: Sentry
> Issue Type: Bug
> Components: Sentry
> Affects Versions: 2.1.0
> Reporter: Na Li
> Priority: Major
>
> It may take a while for sentry to get full snapshot from HMS. During this
> interval, table rename event could happen.
> The current behavior:
> 1) get notification ID before full snapshot: NotificationID_before
> 2) get full snapshot
> 3) get notification ID after full snapshot: NotificationID_after
> 4) If NotificationID_after != NotificationID_before, get notification events
> between, and apply them to the full snapshot through
> {color:#f79232}*FullUpdateModifier.applyEvent()*{color}.
> 5) save the updated full snapshot with
> *{color:#d04437}NotificationID_after{color}*
>
> When there is a privilege associated with the old table, and table rename
> event happens during full snapshot, the privilege is not associated with the
> renamed table.
>
> The solution is to change the behavior as following:
> 1) get notification ID before full snapshot: NotificationID_before
> 2) get full snapshot
> 3) get notification ID after full snapshot: NotificationID_after
> 4) Save the full snapshot with {color:#d04437}*NotificationID_before*{color}
> 5) When HMSFollower gets notification events from
> *{color:#d04437}NotificationID_before{color},* the notification events
> during full snapshot will be processed through
> {color:#f79232}*NotificationProcessor.processNotificationEvent()* {color}
> In this way, sentry always processes the notification events through
> {color:#f79232}*NotificationProcessor.processNotificationEvent()*{color}, and
> the privilege will be associated with renamed table.
> This issue only happens when events, such as table rename, happens during
> full snapshot.
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)