You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by wa...@apache.org on 2013/10/17 07:32:55 UTC
svn commit: r1532967 [7/7] - in
/hadoop/common/branches/HDFS-4949/hadoop-common-project:
hadoop-annotations/ hadoop-common/ hadoop-common/dev-support/
hadoop-common/src/main/bin/ hadoop-common/src/main/conf/
hadoop-common/src/main/docs/ hadoop-common/s...
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestFrameDecoder.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestFrameDecoder.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestFrameDecoder.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestFrameDecoder.java Thu Oct 17 05:32:42 2013
@@ -18,14 +18,18 @@
package org.apache.hadoop.oncrpc;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
-import java.net.InetAddress;
import java.nio.ByteBuffer;
+import org.apache.hadoop.oncrpc.RpcUtil.RpcFrameDecoder;
+import org.apache.hadoop.oncrpc.security.CredentialsNone;
+import org.apache.hadoop.oncrpc.security.VerifierNone;
import org.jboss.netty.buffer.ByteBufferBackedChannelBuffer;
import org.jboss.netty.buffer.ChannelBuffer;
+import org.jboss.netty.buffer.ChannelBuffers;
import org.jboss.netty.channel.Channel;
import org.jboss.netty.channel.ChannelHandlerContext;
import org.junit.Test;
@@ -34,7 +38,7 @@ import org.mockito.Mockito;
public class TestFrameDecoder {
private static int port = 12345; // some random server port
- private static XDR result = null;
+ private static int resultSize;
static void testRequest(XDR request) {
SimpleTcpClient tcpClient = new SimpleTcpClient("localhost", port, request,
@@ -45,17 +49,20 @@ public class TestFrameDecoder {
static class TestRpcProgram extends RpcProgram {
protected TestRpcProgram(String program, String host, int port,
- int progNumber, int lowProgVersion, int highProgVersion, int cacheSize) {
- super(program, host, port, progNumber, lowProgVersion, highProgVersion,
- cacheSize);
+ int progNumber, int lowProgVersion, int highProgVersion) {
+ super(program, host, port, progNumber, lowProgVersion, highProgVersion);
}
@Override
- public XDR handleInternal(RpcCall rpcCall, XDR in, XDR out,
- InetAddress client, Channel channel) {
- // Get the final complete request and return a void response.
- result = in;
- return RpcAcceptedReply.voidReply(out, 1234);
+ protected void handleInternal(ChannelHandlerContext ctx, RpcInfo info) {
+ resultSize = info.data().readableBytes();
+ RpcAcceptedReply reply = RpcAcceptedReply.getAcceptInstance(1234,
+ new VerifierNone());
+ XDR out = new XDR();
+ reply.write(out);
+ ChannelBuffer b = ChannelBuffers.wrappedBuffer(out.asReadOnlyWrap().buffer());
+ RpcResponse rsp = new RpcResponse(b, info.remoteAddress());
+ RpcUtil.sendRpcResponse(ctx, rsp);
}
@Override
@@ -135,42 +142,40 @@ public class TestFrameDecoder {
buf);
assertTrue(channelBuffer != null);
// Complete frame should have to total size 10+10=20
- assertTrue(channelBuffer.array().length == 20);
+ assertEquals(20, channelBuffer.readableBytes());
}
@Test
public void testFrames() {
RpcProgram program = new TestFrameDecoder.TestRpcProgram("TestRpcProgram",
- "localhost", port, 100000, 1, 2, 100);
+ "localhost", port, 100000, 1, 2);
SimpleTcpServer tcpServer = new SimpleTcpServer(port, program, 1);
tcpServer.run();
XDR xdrOut = createGetportMount();
+ int headerSize = xdrOut.size();
int bufsize = 2 * 1024 * 1024;
byte[] buffer = new byte[bufsize];
xdrOut.writeFixedOpaque(buffer);
- int requestSize = xdrOut.size();
+ int requestSize = xdrOut.size() - headerSize;
// Send the request to the server
testRequest(xdrOut);
// Verify the server got the request with right size
- assertTrue(requestSize == result.size());
+ assertEquals(requestSize, resultSize);
}
static void createPortmapXDRheader(XDR xdr_out, int procedure) {
// Make this a method
- RpcCall.write(xdr_out, 0, 100000, 2, procedure);
+ RpcCall.getInstance(0, 100000, 2, procedure, new CredentialsNone(),
+ new VerifierNone()).write(xdr_out);
}
static XDR createGetportMount() {
XDR xdr_out = new XDR();
createPortmapXDRheader(xdr_out, 3);
- xdr_out.writeInt(0); // AUTH_NULL
- xdr_out.writeInt(0); // cred len
- xdr_out.writeInt(0); // verifier AUTH_NULL
- xdr_out.writeInt(0); // verf len
return xdr_out;
}
/*
@@ -191,4 +196,4 @@ public class TestFrameDecoder {
* static void testDump() { XDR xdr_out = new XDR();
* createPortmapXDRheader(xdr_out, 4); testRequest(xdr_out); }
*/
-}
\ No newline at end of file
+}
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcAcceptedReply.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcAcceptedReply.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcAcceptedReply.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcAcceptedReply.java Thu Oct 17 05:32:42 2013
@@ -47,7 +47,7 @@ public class TestRpcAcceptedReply {
@Test
public void testConstructor() {
Verifier verifier = new VerifierNone();
- RpcAcceptedReply reply = new RpcAcceptedReply(0, RpcMessage.Type.RPC_REPLY,
+ RpcAcceptedReply reply = new RpcAcceptedReply(0,
ReplyState.MSG_ACCEPTED, verifier, AcceptState.SUCCESS);
assertEquals(0, reply.getXid());
assertEquals(RpcMessage.Type.RPC_REPLY, reply.getMessageType());
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcCallCache.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcCallCache.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcCallCache.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcCallCache.java Thu Oct 17 05:32:42 2013
@@ -32,6 +32,8 @@ import org.apache.hadoop.oncrpc.RpcCallC
import org.apache.hadoop.oncrpc.RpcCallCache.ClientRequest;
import org.junit.Test;
+import static org.mockito.Mockito.*;
+
/**
* Unit tests for {@link RpcCallCache}
*/
@@ -67,7 +69,7 @@ public class TestRpcCallCache {
validateInprogressCacheEntry(e);
// Set call as completed
- XDR response = new XDR();
+ RpcResponse response = mock(RpcResponse.class);
cache.callCompleted(clientIp, xid, response);
e = cache.checkOrAddToCache(clientIp, xid);
validateCompletedCacheEntry(e, response);
@@ -79,7 +81,7 @@ public class TestRpcCallCache {
assertNull(c.getResponse());
}
- private void validateCompletedCacheEntry(CacheEntry c, XDR response) {
+ private void validateCompletedCacheEntry(CacheEntry c, RpcResponse response) {
assertFalse(c.isInProgress());
assertTrue(c.isCompleted());
assertEquals(response, c.getResponse());
@@ -93,7 +95,7 @@ public class TestRpcCallCache {
assertFalse(c.isCompleted());
assertNull(c.getResponse());
- XDR response = new XDR();
+ RpcResponse response = mock(RpcResponse.class);
c.setResponse(response);
validateCompletedCacheEntry(c, response);
}
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcDeniedReply.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcDeniedReply.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcDeniedReply.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcDeniedReply.java Thu Oct 17 05:32:42 2013
@@ -19,6 +19,7 @@ package org.apache.hadoop.oncrpc;
import org.apache.hadoop.oncrpc.RpcDeniedReply.RejectState;
import org.apache.hadoop.oncrpc.RpcReply.ReplyState;
+import org.apache.hadoop.oncrpc.security.VerifierNone;
import org.junit.Assert;
import org.junit.Test;
@@ -39,10 +40,8 @@ public class TestRpcDeniedReply {
@Test
public void testConstructor() {
- RpcDeniedReply reply = new RpcDeniedReply(0, RpcMessage.Type.RPC_REPLY,
- ReplyState.MSG_ACCEPTED, RejectState.AUTH_ERROR) {
- // Anonymous class
- };
+ RpcDeniedReply reply = new RpcDeniedReply(0, ReplyState.MSG_ACCEPTED,
+ RejectState.AUTH_ERROR, new VerifierNone());
Assert.assertEquals(0, reply.getXid());
Assert.assertEquals(RpcMessage.Type.RPC_REPLY, reply.getMessageType());
Assert.assertEquals(ReplyState.MSG_ACCEPTED, reply.getState());
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcMessage.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcMessage.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcMessage.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcMessage.java Thu Oct 17 05:32:42 2013
@@ -26,7 +26,10 @@ import org.junit.Test;
public class TestRpcMessage {
private RpcMessage getRpcMessage(int xid, RpcMessage.Type msgType) {
return new RpcMessage(xid, msgType) {
- // Anonymous class
+ @Override
+ public XDR write(XDR xdr) {
+ return null;
+ }
};
}
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcReply.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcReply.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcReply.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestRpcReply.java Thu Oct 17 05:32:42 2013
@@ -19,6 +19,7 @@ package org.apache.hadoop.oncrpc;
import org.apache.hadoop.oncrpc.RpcReply.ReplyState;
+import org.apache.hadoop.oncrpc.security.VerifierNone;
import org.junit.Assert;
import org.junit.Test;
@@ -39,8 +40,12 @@ public class TestRpcReply {
@Test
public void testRpcReply() {
- RpcReply reply = new RpcReply(0, RpcMessage.Type.RPC_REPLY, ReplyState.MSG_ACCEPTED) {
- // Anonymous class
+ RpcReply reply = new RpcReply(0, ReplyState.MSG_ACCEPTED,
+ new VerifierNone()) {
+ @Override
+ public XDR write(XDR xdr) {
+ return null;
+ }
};
Assert.assertEquals(0, reply.getXid());
Assert.assertEquals(RpcMessage.Type.RPC_REPLY, reply.getMessageType());
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestXDR.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestXDR.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestXDR.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/TestXDR.java Thu Oct 17 05:32:42 2013
@@ -17,23 +17,34 @@
*/
package org.apache.hadoop.oncrpc;
-import static org.junit.Assert.assertTrue;
-
-import java.util.Arrays;
-
+import org.junit.Assert;
import org.junit.Test;
-/**
- * Tests for {@link XDR}
- */
public class TestXDR {
- /**
- * Test {@link XDR#append(byte[], byte[])}
- */
+ private void serializeInt(int times) {
+ XDR w = new XDR();
+ for (int i = 0; i < times; ++i)
+ w.writeInt(23);
+
+ XDR r = w.asReadOnlyWrap();
+ for (int i = 0; i < times; ++i)
+ Assert.assertEquals(r.readInt(), 23);
+ }
+
+ private void serializeLong(int times) {
+ XDR w = new XDR();
+ for (int i = 0; i < times; ++i)
+ w.writeLongAsHyper(23);
+
+ XDR r = w.asReadOnlyWrap();
+ for (int i = 0; i < times; ++i)
+ Assert.assertEquals(r.readHyper(), 23);
+ }
+
@Test
- public void testAppendBytes() {
- byte[] arr1 = new byte[] {0, 1};
- byte[] arr2 = new byte[] {2, 3};
- assertTrue(Arrays.equals(new byte[]{0, 1, 2, 3}, XDR.append(arr1, arr2)));
+ public void testPerformance() {
+ final int TEST_TIMES = 8 << 20;
+ serializeInt(TEST_TIMES);
+ serializeLong(TEST_TIMES);
}
}
Modified: hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/security/TestCredentialsSys.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/security/TestCredentialsSys.java?rev=1532967&r1=1532966&r2=1532967&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/security/TestCredentialsSys.java (original)
+++ hadoop/common/branches/HDFS-4949/hadoop-common-project/hadoop-nfs/src/test/java/org/apache/hadoop/oncrpc/security/TestCredentialsSys.java Thu Oct 17 05:32:42 2013
@@ -38,7 +38,7 @@ public class TestCredentialsSys {
credential.write(xdr);
CredentialsSys newCredential = new CredentialsSys();
- newCredential.read(xdr);
+ newCredential.read(xdr.asReadOnlyWrap());
assertEquals(0, newCredential.getUID());
assertEquals(1, newCredential.getGID());