jmeter-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pmoua...@apache.org
Subject svn commit: r1764422 - in /jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler: HTTPFileImpl.java HTTPSamplerBase.java
Date Wed, 12 Oct 2016 09:43:21 GMT
Author: pmouawad
Date: Wed Oct 12 09:43:21 2016
New Revision: 1764422

URL: http://svn.apache.org/viewvc?rev=1764422&view=rev
Log:
Bug 53039 - HTTP Request : Be able to handle responses which size exceeds 2147483647 bytes
Fix bug as per Felix Schumacher review, thx
Bugzilla Id: 53039

Modified:
    jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPFileImpl.java
    jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.java

Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPFileImpl.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPFileImpl.java?rev=1764422&r1=1764421&r2=1764422&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPFileImpl.java
(original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPFileImpl.java
Wed Oct 12 09:43:21 2016
@@ -62,9 +62,15 @@ public class HTTPFileImpl extends HTTPAb
             byte[] readBuffer = new byte[bufferSize];
             int bytesReadInBuffer = 0;
             long totalBytes = 0;
+            boolean storeInBOS = true;
             while ((bytesReadInBuffer = is.read(readBuffer)) > -1) {
-                if(totalBytes+bytesReadInBuffer<=MAX_BYTES_TO_STORE_PER_REQUEST) {
-                    bos.write(readBuffer, 0, bytesReadInBuffer);
+                if(storeInBOS) {
+                    if(totalBytes+bytesReadInBuffer<=MAX_BYTES_TO_STORE_PER_REQUEST) {
+                        bos.write(readBuffer, 0, bytesReadInBuffer);
+                    } else {
+                        bos.write(readBuffer, 0, (int)(MAX_BYTES_TO_STORE_PER_REQUEST-totalBytes));
+                        storeInBOS = false;
+                    }
                 }
                 totalBytes += bytesReadInBuffer;
             }

Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.java?rev=1764422&r1=1764421&r2=1764422&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.java
(original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.java
Wed Oct 12 09:43:21 2016
@@ -1791,6 +1791,7 @@ public abstract class HTTPSamplerBase ex
             int bytesReadInBuffer = 0;
             long totalBytes = 0;
             boolean first = true;
+            boolean storeInBOS = true;
             while ((bytesReadInBuffer = in.read(readBuffer)) > -1) {
                 if (first) {
                     sampleResult.latencyEnd();
@@ -1806,9 +1807,14 @@ public abstract class HTTPSamplerBase ex
                 }
                 
                 if (md == null) {
-                    if(totalBytes+bytesReadInBuffer<=MAX_BYTES_TO_STORE_PER_REQUEST) {
-                        w.write(readBuffer, 0, bytesReadInBuffer);
-                    } 
+                    if(storeInBOS) {
+                        if(totalBytes+bytesReadInBuffer<=MAX_BYTES_TO_STORE_PER_REQUEST)
{
+                            w.write(readBuffer, 0, bytesReadInBuffer);
+                        } else {
+                            w.write(readBuffer, 0, (int)(MAX_BYTES_TO_STORE_PER_REQUEST-totalBytes));
+                            storeInBOS = false;
+                        }
+                    }
                 } else {
                     md.update(readBuffer, 0, bytesReadInBuffer);
                 }



Mime
View raw message