[ 
https://issues.apache.org/jira/browse/HTTPCLIENT-987?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Moore updated HTTPCLIENT-987:
--------------------------------------

    Attachment: canonical-uris.patch

The attached patch addresses this issue (mostly updates to the URIExtractor 
class).

This patch is contributed with the permission of my employer.


> cache module does not recognize equivalent URIs
> -----------------------------------------------
>
>                 Key: HTTPCLIENT-987
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-987
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: Cache
>    Affects Versions: 4.1 Alpha2
>            Reporter: Jonathan Moore
>         Attachments: canonical-uris.patch
>
>
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.2.3
> "When comparing two URIs to decide if they match or not, a client SHOULD use 
> a case-sensitive octet-by-octet comparison of the entire URIs, with these 
> exceptions:
>   * A port that is empty or not given is equivalent to the default port for 
> that URI-reference;
>   * Comparisons of host names MUST be case-insensitive;
>   * Comparisons of scheme names MUST be case-insensitive;
>   * An empty abs_path is equivalent to an abs_path of "/".
> Characters other than those in the "reserved" and "unsafe" sets (see RFC 2396 
> [42]) are equivalent to their ""%" HEX HEX" encoding.
> For example, the following three URIs are equivalent:
>       http://abc.com:80/~smith/home.html
>       http://ABC.com/%7Esmith/home.html
>       http://ABC.com:/%7esmith/home.html";
> The current implementation does not canonicalize the URIs it uses for cache 
> keys, and so is missing potential cache hits. More importantly, though, 
> required invalidations due to PUT/POST/DELETE to a URI (as well as those 
> mentioned in Location or Content-Location headers) may not occur properly due 
> to this bug.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to