You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2011/11/03 16:37:32 UTC
svn commit: r1197188 - in /jmeter/trunk:
src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java
xdocs/changes.xml
Author: pmouawad
Date: Thu Nov 3 15:37:32 2011
New Revision: 1197188
URL: http://svn.apache.org/viewvc?rev=1197188&view=rev
Log:
Bug 52129 - Reported Body Size is wrong when using HTTP Client 4 and Keep Alive connection
Modified:
jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java
jmeter/trunk/xdocs/changes.xml
Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java?rev=1197188&r1=1197187&r2=1197188&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java (original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPHC4Impl.java Thu Nov 3 15:37:32 2011
@@ -41,6 +41,7 @@ import org.apache.http.HttpEntity;
import org.apache.http.HttpException;
import org.apache.http.HttpHost;
import org.apache.http.HttpRequest;
+import org.apache.http.HttpRequestInterceptor;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseInterceptor;
import org.apache.http.NameValuePair;
@@ -126,6 +127,16 @@ public class HTTPHC4Impl extends HTTPHCA
context.setAttribute(CONTEXT_METRICS, metrics);
}
};
+ private static final HttpRequestInterceptor METRICS_RESETTER = new HttpRequestInterceptor() {
+
+ @Override
+ public void process(HttpRequest request, HttpContext context)
+ throws HttpException, IOException {
+ HttpConnection conn = (HttpConnection) context.getAttribute(ExecutionContext.HTTP_CONNECTION);
+ HttpConnectionMetrics metrics = conn.getMetrics();
+ metrics.reset();
+ }
+ };
private static final ThreadLocal<Map<HttpClientKey, HttpClient>> HTTPCLIENTS =
new ThreadLocal<Map<HttpClientKey, HttpClient>>(){
@@ -500,6 +511,7 @@ public class HTTPHC4Impl extends HTTPHCA
};
((AbstractHttpClient) httpClient).addResponseInterceptor(new ResponseContentEncoding());
((AbstractHttpClient) httpClient).addResponseInterceptor(METRICS_SAVER); // HACK
+ ((AbstractHttpClient) httpClient).addRequestInterceptor(METRICS_RESETTER);
// Override the defualt schemes as necessary
SchemeRegistry schemeRegistry = httpClient.getConnectionManager().getSchemeRegistry();
Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1197188&r1=1197187&r2=1197188&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml (original)
+++ jmeter/trunk/xdocs/changes.xml Thu Nov 3 15:37:32 2011
@@ -98,6 +98,7 @@ these occurs, Sampler is marked as faile
<li>Bug 52064 - OutOfMemory Risk in CacheManager</li>
<li>Bug 51919 - Random ConcurrentModificationException or NoSuchElementException in CookieManager#removeMatchingCookies when using Concurrent Download</li>
<li>Bug 52126 - HttpClient4 does not clear cookies between iterations</li>
+<li>Bug 52129 - Reported Body Size is wrong when using HTTP Client 4 and Keep Alive connection</li>
</ul>
<h3>Other Samplers</h3>