From commits-return-12914-archive-asf-public=cust-asf.ponee.io@sentry.apache.org Wed Feb 6 19:05:17 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id E0EEA180679 for ; Wed, 6 Feb 2019 20:05:16 +0100 (CET) Received: (qmail 23824 invoked by uid 500); 6 Feb 2019 19:05:16 -0000 Mailing-List: contact commits-help@sentry.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@sentry.apache.org Delivered-To: mailing list commits@sentry.apache.org Received: (qmail 23815 invoked by uid 99); 6 Feb 2019 19:05:16 -0000 Received: from ec2-52-202-80-70.compute-1.amazonaws.com (HELO gitbox.apache.org) (52.202.80.70) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 06 Feb 2019 19:05:16 +0000 Received: by gitbox.apache.org (ASF Mail Server at gitbox.apache.org, from userid 33) id 5518680660; Wed, 6 Feb 2019 19:05:15 +0000 (UTC) Date: Wed, 06 Feb 2019 19:05:15 +0000 To: "commits@sentry.apache.org" Subject: [sentry] branch master updated: SENTRY-2477: When requesting for deltas check if nn seq num is 1 more than latest sequence num (Arjun Mishra reviewed by Na Li) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Message-ID: <154947991530.2560.14547241662421596200@gitbox.apache.org> From: amishra@apache.org X-Git-Host: gitbox.apache.org X-Git-Repo: sentry X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 27ad7a74d7511b0ca0375031894ee565b3323316 X-Git-Newrev: 3edbd2e8c239e6eb148722043033202346bbe66e X-Git-Rev: 3edbd2e8c239e6eb148722043033202346bbe66e X-Git-NotificationType: ref_changed_plus_diff X-Git-Multimail-Version: 1.5.dev Auto-Submitted: auto-generated This is an automated email from the ASF dual-hosted git repository. amishra pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sentry.git The following commit(s) were added to refs/heads/master by this push: new 3edbd2e SENTRY-2477: When requesting for deltas check if nn seq num is 1 more than latest sequence num (Arjun Mishra reviewed by Na Li) 3edbd2e is described below commit 3edbd2e8c239e6eb148722043033202346bbe66e Author: amishra AuthorDate: Wed Feb 6 13:05:02 2019 -0600 SENTRY-2477: When requesting for deltas check if nn seq num is 1 more than latest sequence num (Arjun Mishra reviewed by Na Li) --- .../org/apache/sentry/hdfs/DBUpdateForwarder.java | 2 +- .../apache/sentry/hdfs/TestDBUpdateForwarder.java | 24 ++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/sentry-hdfs/sentry-hdfs-service/src/main/java/org/apache/sentry/hdfs/DBUpdateForwarder.java b/sentry-hdfs/sentry-hdfs-service/src/main/java/org/apache/sentry/hdfs/DBUpdateForwarder.java index 08b16a4..67fece1 100644 --- a/sentry-hdfs/sentry-hdfs-service/src/main/java/org/apache/sentry/hdfs/DBUpdateForwarder.java +++ b/sentry-hdfs/sentry-hdfs-service/src/main/java/org/apache/sentry/hdfs/DBUpdateForwarder.java @@ -117,7 +117,7 @@ class DBUpdateForwarder { long curSeqNum = deltaRetriever.getLatestDeltaID(); LOGGER.debug("({}) Current sequence number is {}", retrieverType, curSeqNum); - if (seqNum > curSeqNum) { + if (seqNum == curSeqNum + 1) { // No new notifications were processed. LOGGER.debug("{}, No new updates", retrieverType); return Collections.emptyList(); diff --git a/sentry-hdfs/sentry-hdfs-service/src/test/java/org/apache/sentry/hdfs/TestDBUpdateForwarder.java b/sentry-hdfs/sentry-hdfs-service/src/test/java/org/apache/sentry/hdfs/TestDBUpdateForwarder.java index f86ce6f..35cfb63 100644 --- a/sentry-hdfs/sentry-hdfs-service/src/test/java/org/apache/sentry/hdfs/TestDBUpdateForwarder.java +++ b/sentry-hdfs/sentry-hdfs-service/src/test/java/org/apache/sentry/hdfs/TestDBUpdateForwarder.java @@ -92,6 +92,15 @@ public class TestDBUpdateForwarder { } @Test + public void testEmptyListReturnedWhenImageSeqIsEqualToLatest() throws Exception { + Mockito.when(imageRetriever.getLatestImageID()).thenReturn(1L); + Mockito.when(deltaRetriever.getLatestDeltaID()).thenReturn(10L); + + List updates = updater.getAllUpdatesFrom(11, 1); + assertTrue(updates.isEmpty()); + } + + @Test public void testFirstImageSyncIsReturnedWhenImageNumIsZero() throws Exception { Mockito.when(imageRetriever.getLatestImageID()).thenReturn(1L); Mockito.when(imageRetriever.retrieveFullImage()) @@ -143,6 +152,21 @@ public class TestDBUpdateForwarder { } @Test + public void testNewImageUpdateIsReturnedWhenImageSeqIsGreaterThanLatestSeqByOne() throws Exception { + Mockito.when(imageRetriever.getLatestImageID()).thenReturn(1L); + Mockito.when(deltaRetriever.getLatestDeltaID()).thenReturn(10L); + Mockito.when(deltaRetriever.isDeltaAvailable(15)).thenReturn(false); + Mockito.when(imageRetriever.retrieveFullImage()) + .thenReturn(new PathsUpdate(10, 1, true)); + + List updates = updater.getAllUpdatesFrom(15, 1); + assertEquals(1, updates.size()); + assertEquals(10, updates.get(0).getSeqNum()); + assertEquals(1, updates.get(0).getImgNum()); + assertTrue(updates.get(0).hasFullImage()); + } + + @Test public void testNewImageUpdateIsReturnedWhenRequestedDeltaIsNotAvailable() throws Exception { Mockito.when(imageRetriever.getLatestImageID()).thenReturn(1L); Mockito.when(deltaRetriever.getLatestDeltaID()).thenReturn(3L);