You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by ph...@apache.org on 2011/11/11 21:48:05 UTC

svn commit: r1201045 - in /zookeeper/trunk: CHANGES.txt src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java

Author: phunt
Date: Fri Nov 11 20:48:05 2011
New Revision: 1201045

URL: http://svn.apache.org/viewvc?rev=1201045&view=rev
Log:
Reverting: ZOOKEEPER-1251. call checkSession at begin of PrepRequestProcessor.pRequest

Modified:
    zookeeper/trunk/CHANGES.txt
    zookeeper/trunk/src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java

Modified: zookeeper/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/trunk/CHANGES.txt?rev=1201045&r1=1201044&r2=1201045&view=diff
==============================================================================
--- zookeeper/trunk/CHANGES.txt (original)
+++ zookeeper/trunk/CHANGES.txt Fri Nov 11 20:48:05 2011
@@ -93,9 +93,6 @@ IMPROVEMENTS:
   ZOOKEEPER-1254. test correct watch handling with multi ops
   (Thomas Koch via phunt)
 
-  ZOOKEEPER-1251. call checkSession at begin of PrepRequestProcessor.pRequest
-  (Thomas Koch via phunt)
-
   ZOOKEEPER-1252. remove unused method o.a.z.test.AxyncTest.restart()
   (Thomas Koch via phunt)
 

Modified: zookeeper/trunk/src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java
URL: http://svn.apache.org/viewvc/zookeeper/trunk/src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java?rev=1201045&r1=1201044&r2=1201045&view=diff
==============================================================================
--- zookeeper/trunk/src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java (original)
+++ zookeeper/trunk/src/java/main/org/apache/zookeeper/server/PrepRequestProcessor.java Fri Nov 11 20:48:05 2011
@@ -298,6 +298,7 @@ public class PrepRequestProcessor extend
 
         switch (type) {
             case OpCode.create:
+                zks.sessionTracker.checkSession(request.sessionId, request.getOwner());
                 CreateRequest createRequest = (CreateRequest)record;
                 if (deserialize) {
                     ByteBufferInputStream.byteBuffer2Record(request.request, createRequest);
@@ -354,6 +355,7 @@ public class PrepRequestProcessor extend
                 addChangeRecord(new ChangeRecord(request.getHdr().getZxid(), path, s, 0, listACL));
                 break;
             case OpCode.delete:
+                zks.sessionTracker.checkSession(request.sessionId, request.getOwner());
                 DeleteRequest deleteRequest = (DeleteRequest)record;
                 if(deserialize)
                     ByteBufferInputStream.byteBuffer2Record(request.request, deleteRequest);
@@ -378,6 +380,7 @@ public class PrepRequestProcessor extend
                 addChangeRecord(new ChangeRecord(request.getHdr().getZxid(), path, null, -1, null));
                 break;
             case OpCode.setData:
+                zks.sessionTracker.checkSession(request.sessionId, request.getOwner());
                 SetDataRequest setDataRequest = (SetDataRequest)record;
                 if(deserialize)
                     ByteBufferInputStream.byteBuffer2Record(request.request, setDataRequest);
@@ -391,6 +394,7 @@ public class PrepRequestProcessor extend
                 addChangeRecord(nodeRecord);
                 break;
             case OpCode.setACL:
+                zks.sessionTracker.checkSession(request.sessionId, request.getOwner());
                 SetACLRequest setAclRequest = (SetACLRequest)record;
                 if(deserialize)
                     ByteBufferInputStream.byteBuffer2Record(request.request, setAclRequest);
@@ -439,6 +443,7 @@ public class PrepRequestProcessor extend
                         + Long.toHexString(request.sessionId));
                 break;
             case OpCode.check:
+                zks.sessionTracker.checkSession(request.sessionId, request.getOwner());
                 CheckVersionRequest checkVersionRequest = (CheckVersionRequest)record;
                 if(deserialize)
                     ByteBufferInputStream.byteBuffer2Record(request.request, checkVersionRequest);
@@ -472,10 +477,6 @@ public class PrepRequestProcessor extend
         request.setTxn(null);
 
         try {
-            if(request.type != OpCode.createSession && request.type != OpCode.closeSession) {
-                zks.sessionTracker.checkSession(request.sessionId, request.getOwner());
-            }
-
             switch (request.type) {
                 case OpCode.create:
                 CreateRequest createRequest = new CreateRequest();
@@ -571,6 +572,19 @@ public class PrepRequestProcessor extend
             case OpCode.closeSession:
                 pRequest2Txn(request.type, zks.getNextZxid(), request, null, true);
                 break;
+
+            //All the rest don't need to create a Txn - just verify session
+            case OpCode.sync:
+            case OpCode.exists:
+            case OpCode.getData:
+            case OpCode.getACL:
+            case OpCode.getChildren:
+            case OpCode.getChildren2:
+            case OpCode.ping:
+            case OpCode.setWatches:
+                zks.sessionTracker.checkSession(request.sessionId,
+                        request.getOwner());
+                break;
             }
         } catch (KeeperException e) {
             if (request.getHdr() != null) {