SENTRY-2480: Change processDropDatabase to call removeAllPaths (Arjun Mishra reviewed by Kalyan Kumar Kalvagadda)
Change-Id: Iea90a22351e32fa44a3f986481e1dda745493997
diff --git a/sentry-service/sentry-service-server/src/main/java/org/apache/sentry/provider/db/service/persistent/NotificationProcessor.java b/sentry-service/sentry-service-server/src/main/java/org/apache/sentry/provider/db/service/persistent/NotificationProcessor.java
index ab262d0..3a61b52 100644
--- a/sentry-service/sentry-service-server/src/main/java/org/apache/sentry/provider/db/service/persistent/NotificationProcessor.java
+++ b/sentry-service/sentry-service-server/src/main/java/org/apache/sentry/provider/db/service/persistent/NotificationProcessor.java
@@ -279,7 +279,6 @@
SentryJSONDropDatabaseMessage dropDatabaseMessage =
deserializer.getDropDatabaseMessage(event.getMessage());
String dbName = dropDatabaseMessage.getDB();
- String location = dropDatabaseMessage.getLocation();
if (dbName == null) {
LOGGER.warn("Drop database event has incomplete information: dbName = null");
return false;
@@ -289,8 +288,7 @@
}
if (hdfsSyncEnabled) {
- List<String> locations = Collections.singletonList(location);
- removePaths(dbName, locations, event);
+ removeAllPaths(dbName, event);
return true;
}
return false;
diff --git a/sentry-service/sentry-service-server/src/test/java/org/apache/sentry/provider/db/service/persistent/TestNotificationProcessor.java b/sentry-service/sentry-service-server/src/test/java/org/apache/sentry/provider/db/service/persistent/TestNotificationProcessor.java
index f227bb4..18e5ddf 100644
--- a/sentry-service/sentry-service-server/src/test/java/org/apache/sentry/provider/db/service/persistent/TestNotificationProcessor.java
+++ b/sentry-service/sentry-service-server/src/test/java/org/apache/sentry/provider/db/service/persistent/TestNotificationProcessor.java
@@ -153,8 +153,8 @@
authorizable.setDb("db1");
//noinspection unchecked
- verify(sentryStore, times(1)).deleteAuthzPathsMapping(Mockito.anyString(),
- Mockito.anyCollection(), Mockito.any(UniquePathsUpdate.class));
+ verify(sentryStore, times(1)).deleteAllAuthzPathsMapping(Mockito.anyString(),
+ Mockito.any(UniquePathsUpdate.class));
verify(sentryStore, times(1)).dropPrivilege(authorizable,
NotificationProcessor.getPermUpdatableOnDrop(authorizable));
reset(sentryStore);
@@ -175,8 +175,7 @@
authorizable.setDb(dbName);
//noinspection unchecked
- verify(sentryStore, times(1)).deleteAuthzPathsMapping(Mockito.anyString(),
- Mockito.anyCollection(), Mockito.any(UniquePathsUpdate.class));
+ verify(sentryStore, times(1)).deleteAllAuthzPathsMapping(Mockito.anyString(), Mockito.any(UniquePathsUpdate.class));
verify(sentryStore, times(0)).dropPrivilege(authorizable,
NotificationProcessor.getPermUpdatableOnDrop(authorizable));
}