You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by jo...@apache.org on 2018/08/31 03:22:12 UTC
[incubator-druid] branch master updated: BytesFullResponseHandler
should only consume readableBytes of ChannelBuffer (#6270)
This is an automated email from the ASF dual-hosted git repository.
jonwei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-druid.git
The following commit(s) were added to refs/heads/master by this push:
new 951b36e BytesFullResponseHandler should only consume readableBytes of ChannelBuffer (#6270)
951b36e is described below
commit 951b36e2bc7caed992a263a5e1289414b12b39da
Author: Dayue Gao <dy...@gmail.com>
AuthorDate: Fri Aug 31 11:22:08 2018 +0800
BytesFullResponseHandler should only consume readableBytes of ChannelBuffer (#6270)
---
.../basic/authentication/BytesFullResponseHandler.java | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/extensions-core/druid-basic-security/src/main/java/org/apache/druid/security/basic/authentication/BytesFullResponseHandler.java b/extensions-core/druid-basic-security/src/main/java/org/apache/druid/security/basic/authentication/BytesFullResponseHandler.java
index fa00a92..0f75ae2 100644
--- a/extensions-core/druid-basic-security/src/main/java/org/apache/druid/security/basic/authentication/BytesFullResponseHandler.java
+++ b/extensions-core/druid-basic-security/src/main/java/org/apache/druid/security/basic/authentication/BytesFullResponseHandler.java
@@ -22,6 +22,7 @@ package org.apache.druid.security.basic.authentication;
import org.apache.druid.java.util.http.client.response.ClientResponse;
import org.apache.druid.java.util.http.client.response.FullResponseHolder;
import org.apache.druid.java.util.http.client.response.HttpResponseHandler;
+import org.jboss.netty.buffer.ChannelBuffer;
import org.jboss.netty.handler.codec.http.HttpChunk;
import org.jboss.netty.handler.codec.http.HttpResponse;
@@ -36,7 +37,7 @@ public class BytesFullResponseHandler implements HttpResponseHandler<FullRespons
null
);
- holder.addChunk(response.getContent().array());
+ holder.addChunk(getContentBytes(response.getContent()));
return ClientResponse.unfinished(
holder
@@ -55,7 +56,7 @@ public class BytesFullResponseHandler implements HttpResponseHandler<FullRespons
return ClientResponse.finished(null);
}
- holder.addChunk(chunk.getContent().array());
+ holder.addChunk(getContentBytes(chunk.getContent()));
return response;
}
@@ -72,4 +73,11 @@ public class BytesFullResponseHandler implements HttpResponseHandler<FullRespons
{
// Its safe to Ignore as the ClientResponse returned in handleChunk were unfinished
}
+
+ private byte[] getContentBytes(ChannelBuffer content)
+ {
+ byte[] contentBytes = new byte[content.readableBytes()];
+ content.readBytes(contentBytes);
+ return contentBytes;
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org