[ https://issues.apache.org/jira/browse/KNOX-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15881392#comment-15881392 ]
Dragan Vujovic commented on KNOX-885: ------------------------------------- Seems that this has been fixed in 0.7 with the removal of CappedBufferHttpEntity. > "Hit replay buffer max limit" when using KNOX with HBase REST > ------------------------------------------------------------- > > Key: KNOX-885 > URL: https://issues.apache.org/jira/browse/KNOX-885 > Project: Apache Knox > Issue Type: Bug > Components: Server > Affects Versions: 0.6.0 > Environment: Hortonworks HDP-2.4.3.0-227 > Reporter: Dragan Vujovic > > I am using KNOX with HBase REST on a Kerberized cluster. Everything works > fine except when trying to send a POST request with a large body. The problem > seems to be similar to the one from KNOX-475. I get the following exception: > {noformat} > java.io.IOException: Hit replay buffer max limit > at > org.apache.hadoop.gateway.dispatch.CappedBufferHttpEntity$ReplayStream.read(CappedBufferHttpEntity.java:143) > at java.io.InputStream.read(InputStream.java:101) > at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1792) > at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1769) > at org.apache.commons.io.IOUtils.copy(IOUtils.java:1744) > at > org.apache.hadoop.gateway.dispatch.CappedBufferHttpEntity.writeTo(CappedBufferHttpEntity.java:93) > at > org.apache.http.impl.DefaultBHttpClientConnection.sendRequestEntity(DefaultBHttpClientConnection.java:155) > at > org.apache.http.impl.conn.CPoolProxy.sendRequestEntity(CPoolProxy.java:149) > at > org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:236) > at > org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:121) > at > org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:254) > > > at > org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:195) > > > at > org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:86) > > > at > org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:108) > > > at > org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) > > > at > org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82) > > > at > org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106) > > > at > org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57) > > > at > org.apache.hadoop.gateway.dispatch.DefaultDispatch.executeKerberosDispatch(DefaultDispatch.java:229) > > at > org.apache.hadoop.gateway.dispatch.DefaultDispatch.executeOutboundRequest(DefaultDispatch.java:134) > > > at > org.apache.hadoop.gateway.dispatch.DefaultDispatch.executeRequest(DefaultDispatch.java:114) > > > at > org.apache.hadoop.gateway.dispatch.DefaultDispatch.doPut(DefaultDispatch.java:311) > > > at > org.apache.hadoop.gateway.dispatch.GatewayDispatchFilter$PutAdapter.doMethod(GatewayDispatchFilter.java:159) > > at > org.apache.hadoop.gateway.dispatch.GatewayDispatchFilter.doFilter(GatewayDispatchFilter.java:117) > > > at > org.apache.hadoop.gateway.filter.AbstractGatewayFilter.doFilter(AbstractGatewayFilter.java:61) > > > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > > > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > > > at > org.apache.hadoop.gateway.filter.AclsAuthorizationFilter.doFilter(AclsAuthorizationFilter.java:89) > > > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.hadoop.gateway.identityasserter.common.filter.AbstractIdentityAssertionFilter.doFilterInternal(AbstractIdentityAssertionFilter.java:195) > at > org.apache.hadoop.gateway.identityasserter.common.filter.AbstractIdentityAssertionFilter.continueChainAsPrincipal(AbstractIdentityAssertionFilter.java:152) > at > org.apache.hadoop.gateway.identityasserter.common.filter.CommonIdentityAssertionFilter.doFilter(CommonIdentityAssertionFilter.java:66) > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.hadoop.gateway.filter.rewrite.api.UrlRewriteServletFilter.doFilter(UrlRewriteServletFilter.java:60) > at > org.apache.hadoop.gateway.filter.AbstractGatewayFilter.doFilter(AbstractGatewayFilter.java:61) > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.hadoop.gateway.filter.ShiroSubjectIdentityAdapter$CallableChain$1.run(ShiroSubjectIdentityAdapter.java:93) > at > org.apache.hadoop.gateway.filter.ShiroSubjectIdentityAdapter$CallableChain$1.run(ShiroSubjectIdentityAdapter.java:90) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:422) > at > org.apache.hadoop.gateway.filter.ShiroSubjectIdentityAdapter$CallableChain.call(ShiroSubjectIdentityAdapter.java:129) > at > org.apache.hadoop.gateway.filter.ShiroSubjectIdentityAdapter$CallableChain.call(ShiroSubjectIdentityAdapter.java:77) > at > org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) > at > org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) > at > org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383) > at > org.apache.hadoop.gateway.filter.ShiroSubjectIdentityAdapter.doFilter(ShiroSubjectIdentityAdapter.java:74) > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61) > at > org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108) > at > org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137) > at > org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) > at > org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) > at > org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) > at > org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) > at > org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) > at > org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) > at > org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383) > at > org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) > at > org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.hadoop.gateway.filter.ResponseCookieFilter.doFilter(ResponseCookieFilter.java:38) > at > org.apache.hadoop.gateway.filter.AbstractGatewayFilter.doFilter(AbstractGatewayFilter.java:61) > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.hadoop.gateway.filter.XForwardedHeaderFilter.doFilter(XForwardedHeaderFilter.java:30) > at > org.apache.hadoop.gateway.filter.AbstractGatewayFilter.doFilter(AbstractGatewayFilter.java:61) > at > org.apache.hadoop.gateway.GatewayFilter$Holder.doFilter(GatewayFilter.java:315) > at > org.apache.hadoop.gateway.GatewayFilter$Chain.doFilter(GatewayFilter.java:215) > at > org.apache.hadoop.gateway.GatewayFilter.doFilter(GatewayFilter.java:129) > at > org.apache.hadoop.gateway.GatewayServlet.service(GatewayServlet.java:121) > at > org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684) > at > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) > at > org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) > at > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) > at > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086) > at > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428) > at > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) > at > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) > at > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) > at org.eclipse.jetty.server.Server.handle(Server.java:370) > at > org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494) > at > org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:982) > at > org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1043) > at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) > at > org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) > at > org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) > at > org.eclipse.jetty.io.nio.SslConnection.handle(SslConnection.java:196) > at > org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667) > at > org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) > at java.lang.Thread.run(Thread.java:745) > {noformat} -- This message was sent by Atlassian JIRA (v6.3.15#6346)