Closed
Bug 75679
Opened 24 years ago
Closed 24 years ago
nsIRequest:: new load flags for cache
Categories
(Core :: Networking: Cache, defect)
Core
Networking: Cache
Tracking
()
VERIFIED
FIXED
mozilla0.9
People
(Reporter: darin.moz, Assigned: darin.moz)
References
Details
the nsIRequest:: load flags need to be revised. the issues are:
1) need to support caching "no-cache" content for session history
2) VALIDATE_ALWAYS is unnecessary/redundant. it can be replaced by either
FORCE_VALIDATION or LOAD_NORMAL, depending on your interpretation of this
flag ;-)
we can resolve these issues by adding the following flags:
STORE_NO_CACHE_CONTENT - allow caching of content that should not be reused
REUSE_NO_CACHE_CONTENT - allow reuse of content that shouldn't be reused
and removing VALIDATE_ALWAYS as it is currently equivalent to LOAD_NORMAL.
Assignee | ||
Updated•24 years ago
|
Assignee | ||
Updated•24 years ago
|
Assignee | ||
Comment 1•24 years ago
|
||
gordon and i have developed a much simpler and (hopefully) more intuitive set
of load flags:
MUST_RELOAD - must ignore cached content and reload
MUST_VALIDATE - must validate cached content
DONT_VALIDATE - use whatever is in the cache
DONT_VALIDATE_EXPIRED - dont validate things that have expired, but
always reload/validate no-cache content.
DONT_VALIDATE_EXPIRED_IF_RECENT - dont validate things that have expired if
they were created/already-validated this
session, but always reload/validate no-cache
content.
the last two flags correspond to the browsing modes "validate never" and
"validate once per session." if none of the flags are set, then validation
will be automatic, meaning only if the content has expired or if the content
must be validated.
as a comment: it turns out that http permits caching of all downloaded content;
however, some content simply must be validated before it can be reused. this
is why the last two flags listed above do not rule out validation in all cases.
this means that the STORE_NO_CACHE_CONTENT flag that i previously proposed is
unnecessary.
Assignee | ||
Comment 2•24 years ago
|
||
i've been studying the way ns4x and ie5 interpret the cache validation flags,
and i believe that the way i've interpreted them is consistent. i feel that
this is very important for maintaining expected browser behavior w.r.t. caching
and validation.
Assignee | ||
Comment 3•24 years ago
|
||
Discussed this extensively with gordon and gagan on friday, and we settled on
a hopefully simpler set of load flags:
LOAD_NORMAL - normal browsing
LOAD_BYPASS_CACHE - ignore cached response, replaces FORCE_RELOAD
LOAD_FROM_CACHE - trust cached response, even if the cached response was not
meant to be reused without validation.
if LOAD_NORMAL, then the following flags also apply:
VALIDATE_ALWAYS - validate *all* cached responses before reusing.
VALIDATE_ONCE_PER_SESSION - always validate cached responses that were not meant
to be reused. don't bother validating other cached
responses if already validated this session.
VALIDATE_NEVER - always validate cached responses that were not meant
to be reused. don't bother validating other cached
responses.
if LOAD_NORMAL and none of the VALIDATE_ bits are set, then validation is
performed automatically (based on expiration times, etc).
Assignee | ||
Comment 4•24 years ago
|
||
A patch for the flags as just described was checked in on friday 4/13.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Component: Networking → Networking: Cache
QA Contact: tever → bbaetz
Summary: nsIRequest:: load flags need revision → nsIRequest:: new load flags for cache
You need to log in
before you can comment on or make changes to this bug.
Description
•