Repository: sentry
Updated Branches:
  refs/heads/sentry-ha-redesign ff369db20 -> 6835fa95b


SENTRY-1710: Reduce datanucleus key cache size for MSentryPermChange and 
MSentryPathChange tables (Lei Xu, reviewed by Alex Kolbasov, Hao Hao and Na Li)


Project: http://git-wip-us.apache.org/repos/asf/sentry/repo
Commit: http://git-wip-us.apache.org/repos/asf/sentry/commit/6835fa95
Tree: http://git-wip-us.apache.org/repos/asf/sentry/tree/6835fa95
Diff: http://git-wip-us.apache.org/repos/asf/sentry/diff/6835fa95

Branch: refs/heads/sentry-ha-redesign
Commit: 6835fa95bf47372f16adb9363577244201587398
Parents: ff369db
Author: Alexander Kolbasov <[email protected]>
Authored: Thu Apr 20 17:42:15 2017 -0700
Committer: Alexander Kolbasov <[email protected]>
Committed: Thu Apr 20 17:42:15 2017 -0700

----------------------------------------------------------------------
 .../sentry/provider/db/service/model/MSentryPathChange.java    | 3 +--
 .../sentry/provider/db/service/model/MSentryPermChange.java    | 3 +--
 .../org/apache/sentry/provider/db/service/model/package.jdo    | 4 ++--
 .../provider/db/service/persistent/DeltaTransactionBlock.java  | 6 ++----
 4 files changed, 6 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/sentry/blob/6835fa95/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPathChange.java
----------------------------------------------------------------------
diff --git 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPathChange.java
 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPathChange.java
index 4b42ed0..42f80aa 100644
--- 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPathChange.java
+++ 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPathChange.java
@@ -67,7 +67,7 @@ public class MSentryPathChange implements MSentryChange {
   private long createTimeMs;
   private long notificationID;
 
-  public MSentryPathChange(long changeID, PathsUpdate pathChange) throws 
TException {
+  public MSentryPathChange(PathsUpdate pathChange) throws TException {
     // Each PathsUpdate maps to a MSentryPathChange object.
     // The PathsUpdate is generated from a HMS notification log,
     // the notification ID is stored as seqNum and
@@ -75,7 +75,6 @@ public class MSentryPathChange implements MSentryChange {
     //
     // See SENTRY-1643. changeID is set after increasing 1 of the 
"max(changeID)" fetched from
     // the table, to avoid holes between changeIDs. it is subjected to change.
-    this.changeID = changeID;
     this.notificationID = pathChange.getSeqNum();
     this.pathChange = pathChange.JSONSerialize();
     this.createTimeMs = System.currentTimeMillis();

http://git-wip-us.apache.org/repos/asf/sentry/blob/6835fa95/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPermChange.java
----------------------------------------------------------------------
diff --git 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPermChange.java
 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPermChange.java
index a97d10a..8d9528f 100644
--- 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPermChange.java
+++ 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/MSentryPermChange.java
@@ -64,10 +64,9 @@ public class MSentryPermChange implements MSentryChange {
   private String permChange;
   private long createTimeMs;
 
-  public MSentryPermChange(long changeID, PermissionsUpdate permChange) throws 
TException {
+  public MSentryPermChange(PermissionsUpdate permChange) throws TException {
     // See SENTRY-1643. changeID is set after increasing 1 of the 
"max(changeID)" fetched from
     // the table, to avoid holes between changeIDs. it is subjected to change.
-    this.changeID = changeID;
     this.permChange = permChange.JSONSerialize();
     this.createTimeMs = System.currentTimeMillis();
   }

http://git-wip-us.apache.org/repos/asf/sentry/blob/6835fa95/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/package.jdo
----------------------------------------------------------------------
diff --git 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/package.jdo
 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/package.jdo
index 81a4c6e..8fd5278 100644
--- 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/package.jdo
+++ 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/model/package.jdo
@@ -271,7 +271,7 @@
     </class>
 
      <class name="MSentryPermChange" table="SENTRY_PERM_CHANGE" 
identity-type="application" detachable="true">
-       <field name="changeID" primary-key="true" value-strategy="increment">
+       <field name="changeID" primary-key="true" value-strategy="increment" 
key-cache-size="1">
          <column name="CHANGE_ID" jdbc-type="BIGINT" allows-null="false"/>
        </field>
        <field name ="permChange">
@@ -283,7 +283,7 @@
      </class>
 
      <class name="MSentryPathChange" table="SENTRY_PATH_CHANGE" 
identity-type="application" detachable="true">
-       <field name="changeID" primary-key="true" value-strategy="increment">
+       <field name="changeID" primary-key="true" value-strategy="increment" 
key-cache-size="1">
          <column name="CHANGE_ID" jdbc-type="BIGINT" allows-null="false"/>
        </field>
        <field name="notificationID">

http://git-wip-us.apache.org/repos/asf/sentry/blob/6835fa95/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/DeltaTransactionBlock.java
----------------------------------------------------------------------
diff --git 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/DeltaTransactionBlock.java
 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/DeltaTransactionBlock.java
index 8d3c88b..f590a52 100644
--- 
a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/DeltaTransactionBlock.java
+++ 
b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/persistent/DeltaTransactionBlock.java
@@ -83,11 +83,9 @@ public class DeltaTransactionBlock implements 
TransactionBlock<Object> {
     // changeID is trying to be persisted twice, the transaction would
     // fail.
     if (update instanceof PermissionsUpdate) {
-      long lastChangeID = SentryStore.getLastProcessedChangeIDCore(pm, 
MSentryPermChange.class);
-      pm.makePersistent(new MSentryPermChange(lastChangeID + 1, 
(PermissionsUpdate)update));
+      pm.makePersistent(new MSentryPermChange((PermissionsUpdate)update));
     } else if (update instanceof PathsUpdate) {
-      long lastChangeID = SentryStore.getLastProcessedChangeIDCore(pm, 
MSentryPathChange.class);
-      pm.makePersistent(new MSentryPathChange(lastChangeID + 1, 
(PathsUpdate)update));
+      pm.makePersistent(new MSentryPathChange((PathsUpdate)update));
     } else {
       throw new SentryInvalidInputException("Update should be type of either " 
+
           "PermissionsUpdate or PathsUpdate.\n");

Reply via email to