Bug 52137

Summary: Problems with HTTP Cache Manager
Product: JMeter - Now in Github Reporter: Julian Cesar <juliancesar>
Component: HTTPAssignee: JMeter issues mailing list <issues>
Status: RESOLVED FIXED    
Severity: major CC: juliancesar, p.mouawad
Priority: P2    
Version: Nightly (Please specify date)   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Attachments: Test Plan

Description Julian Cesar 2011-11-04 14:57:18 UTC
Created attachment 27897 [details]
Test Plan

In revision r1196526 (02-Nov-2011 13:24) we have 3 problems, you can see in test plan attached.

1. When we use the "Use concurrent pool" with "HTTP Cache Manager" the resources don't cached, this problems discribed here was related too in bug 51752, but for me don't work.

2. When we use the "HTTP Request Default" and check "Use concurrent pool" we can't change the value, because when I "Clean All" (Ctrl +E) the value restart to 4, this only happens in the "HTTP Request Default" component.

3. Even if the option "Retrieve all embedded resources" is enabled, the option "Use concurrent pool" is used, I know this because the function "Retrieve all embedded resources" only works with the "Use concurrent pool" disabled, and the interface (GUI) also show this.

I'm considering that a resource is cached when it comes with the code "304" and the message does "Not Modified".
Comment 1 Philippe Mouawad 2011-11-04 16:42:34 UTC
(In reply to comment #0)
> Created attachment 27897 [details]
> Test Plan
> 
> In revision r1196526 (02-Nov-2011 13:24) we have 3 problems, you can see in
> test plan attached.
> 
> 1. When we use the "Use concurrent pool" with "HTTP Cache Manager" the
> resources don't cached, this problems discribed here was related too in bug
> 51752, but for me don't work.

This is a regression of fix to Bug 51919, clone of Sampler cloned CacheManager whith flag useExpires set to false as testIterationStart was not called.
I made it shared instead of cloned, because in this case Cache should be shared by sons of current thread.
 
> 
> 2. When we use the "HTTP Request Default" and check "Use concurrent pool" we
> can't change the value, because when I "Clean All" (Ctrl +E) the value restart
> to 4, this only happens in the "HTTP Request Default" component.
Fixed.
> 
> 3. Even if the option "Retrieve all embedded resources" is enabled, the option
> "Use concurrent pool" is used, I know this because the function "Retrieve all
> embedded resources" only works with the "Use concurrent pool" disabled, and the
> interface (GUI) also show this.
> 
This is a feature , see:
http://jakarta.apache.org/jmeter/usermanual/component_reference.html#HTTP_Request_Defaults

Note: radio buttons only have two states - on or off. This makes it impossible to override settings consistently - does off mean off, or does it mean use the current default? JMeter uses the latter (otherwise defaults would not work at all). 
======> So if the button is off, then a later element can set it on, but if the button is on, a later element cannot set it off. 

> I'm considering that a resource is cached when it comes with the code "304" and
> the message does "Not Modified".
Comment 2 Philippe Mouawad 2011-11-04 16:42:48 UTC
Date: Fri Nov  4 16:39:07 2011
New Revision: 1197642

URL: http://svn.apache.org/viewvc?rev=1197642&view=rev
Log:
Bug 52137 - Problems with HTTP Cache Manager

Modified:
   jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/config/gui/HttpDefaultsGui.java
   jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.java
   jmeter/trunk/xdocs/changes.xml
Comment 3 The ASF infrastructure team 2022-09-24 20:37:47 UTC
This issue has been migrated to GitHub: https://github.com/apache/jmeter/issues/2637