Commit Graph

148 Commits

Author SHA1 Message Date
Ben Kelly
5c053286a9 Bug 1166911 Modify Cache API sqlite code to use IS NULL literal when comparing an empty key. r=ehsan 2015-05-21 18:16:37 -07:00
Ben Kelly
f98f324fbf Bug 1166038 De-duplicate security info stored in the Cache API. r=ehsan 2015-05-21 18:16:36 -07:00
Ben Kelly
760aa0c4fa Bug 1166577 Use named sqlite params in Cache API code. r=ehsan 2015-05-20 06:51:19 -07:00
Ben Kelly
650a9505a3 Bug 1162342 Enable sqlite WAL transactions in Cache API. r=ehsan 2015-05-13 17:55:48 -07:00
Ben Kelly
5d10d9b4ac Bug 1154325 P2 Use Blobs for CacheStorage keys to avoid encoding issues. r=ehsan 2015-04-29 09:03:15 -07:00
Boris Zbarsky
789a3bf96e Bug 1157898 part 1. Make code of the form "return rv.ErrorCode();" where rv is an ErrorResult use StealNSResult instead. r=peterv
This patch was generated with the following command:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 's/return ([a-zA-Z0-9]+)\.ErrorCode\(\);/return \1.StealNSResult();/'
2015-04-27 09:18:51 -04:00
Boris Zbarsky
2067ba5765 Bug 1157754 part 2. Convert consumers of ErrorResult::ClearMessage() to the new better APIs we have for suppressing exceptions on ErrorResult. r=bkelly 2015-04-26 22:38:17 -04:00
Ben Kelly
0c3ecc763a Bug 1110485 P7 Rename DeleteCache() to DeleteCacheId() better distinguish it from CacheDelete(). r=ehsan 2015-04-16 12:00:16 -07:00
Ben Kelly
581b87a39b Bug 1110485 P5 Replace useless DBSchema class type with namespace. r=ehsan 2015-04-16 12:00:16 -07:00
Ben Kelly
19788ebc81 Bug 1110485 P3 Move Fetch IPC PHeaderEntry type to Cache. Rename HeadesEntry. r=nsm 2015-04-16 12:00:15 -07:00
Ben Kelly
3eda7b0ad0 Bug 1110485 P2 Remove 'P' prefix from non-protocol IPC types in Cache API. r=baku 2015-04-16 12:00:15 -07:00
Ehsan Akhgari
2d0efd09c4 Bug 1149987 - Part 8: Do not store or match Response objects with a Vary:* header; r=bkelly 2015-04-15 15:55:51 -04:00
Carsten "Tomcat" Book
4fe7ad9602 Backed out changeset a74f0b2545ab (bug 1110485) 2015-04-15 09:54:48 +02:00
Carsten "Tomcat" Book
5c850292a0 Backed out changeset 1bbb1ec38652 (bug 1110485) 2015-04-15 09:54:45 +02:00
Carsten "Tomcat" Book
a0faffc2d4 Backed out changeset de417ee861be (bug 1110485) 2015-04-15 09:54:36 +02:00
Carsten "Tomcat" Book
6edc845d59 Backed out changeset e8de5745c5c3 (bug 1110485) 2015-04-15 09:54:27 +02:00
Ben Kelly
96cffe9b41 Bug 1110485 P7 Rename DeleteCache() to DeleteCacheId() better distinguish it from CacheDelete(). r=ehsan 2015-04-14 17:11:20 -07:00
Ben Kelly
16e8411904 Bug 1110485 P5 Replace useless DBSchema class type with namespace. r=ehsan 2015-04-14 17:11:19 -07:00
Ben Kelly
07a1eaa64f Bug 1110485 P3 Move Fetch IPC PHeaderEntry type to Cache. Rename HeadesEntry. r=nsm 2015-04-14 17:11:19 -07:00
Ben Kelly
276f4fe9b5 Bug 1110485 P2 Remove 'P' prefix from non-protocol IPC types in Cache API. r=baku 2015-04-14 17:11:19 -07:00
Wes Kocher
0b492b45ca Backed out changeset 114377b11793 (bug 1110485) 2015-04-14 15:27:46 -07:00
Wes Kocher
b1e47b9b9e Backed out changeset 565246a02797 (bug 1110485) 2015-04-14 15:27:45 -07:00
Wes Kocher
1936b2c264 Backed out changeset 55723c780549 (bug 1110485) 2015-04-14 15:27:40 -07:00
Wes Kocher
b05b404753 Backed out changeset b6b9517e3d50 (bug 1110485) 2015-04-14 15:27:37 -07:00
Ben Kelly
9b3b586d02 Bug 1110485 P7 Rename DeleteCache() to DeleteCacheId() better distinguish it from CacheDelete(). r=ehsan 2015-04-14 12:21:14 -07:00
Ben Kelly
172107353e Bug 1110485 P5 Replace useless DBSchema class type with namespace. r=ehsan 2015-04-14 12:21:14 -07:00
Ben Kelly
94bcb24eb5 Bug 1110485 P3 Move Fetch IPC PHeaderEntry type to Cache. Rename HeadesEntry. r=nsm 2015-04-14 12:21:14 -07:00
Ben Kelly
87c4610793 Bug 1110485 P2 Remove 'P' prefix from non-protocol IPC types in Cache API. r=baku 2015-04-14 12:21:14 -07:00
Wes Kocher
9681a7a9f0 Backed out 3 changesets (bug 1110485) for wpt-3 bustage
Backed out changeset e8bd3bf404ff (bug 1110485)
Backed out changeset fa29dbb49a66 (bug 1110485)
Backed out changeset 12deb121d126 (bug 1110485)
2015-04-13 15:18:19 -07:00
Ben Kelly
dc6734f3e2 Bug 1110485 P3 Move Fetch IPC PHeaderEntry type to Cache. Rename HeadesEntry. r=nsm 2015-04-13 14:05:57 -07:00
Ben Kelly
8272fa9b9b Bug 1110485 P2 Remove 'P' prefix from non-protocol IPC types in Cache API. r=baku 2015-04-13 14:05:57 -07:00
Ryan VanderMeulen
f32babf004 Backed out 5 changesets (bug 1149987) for mochitest crashes.
Backed out changeset b62e371d6189 (bug 1149987)
Backed out changeset daa762fca8e6 (bug 1149987)
Backed out changeset bdb64d5befa5 (bug 1149987)
Backed out changeset 693901a4bcde (bug 1149987)
Backed out changeset e7c41c8653c4 (bug 1149987)

CLOSED TREE
2015-04-08 11:49:49 -04:00
Ehsan Akhgari
d9b22fc1d9 Bug 1149987 - Part 5: Do not store or match Response objects with a Vary:* header; r=bkelly 2015-04-08 10:27:40 -04:00
Ben Kelly
a2b4c2dbb7 Bug 1150608 Do not reuse CacheId values within an origin. r=ehsan 2015-04-02 17:11:41 -07:00
Ehsan Akhgari
e799d1a3cd Bug 1147699 - Part 14: Add a test for FetchEvent.request.context when intercepting loads coming from plugins; r=nsm 2015-03-30 08:42:53 -04:00
Ehsan Akhgari
ea4194dbb5 Bug 1146610 - Add static_asserts that check the validity of the enum values that we write into the cache database; r=bkelly
These assertions will catch future accidental changes to these enums
which will invalidate the data that we store in the Cache database.
2015-03-24 16:45:12 -04:00
Ehsan Akhgari
4dbf6f1e90 Bug 1126819 - Part 2: Persist the Request.cache attribute in DOM Cache; r=bkelly 2015-03-23 15:46:58 -04:00
Ehsan Akhgari
cfd28305a2 Bug 1143894 - Part 3: Do not propagate errors in getting the headers to the outside world; r=bkelly
The Vary header may contain invalid header name values.  We should just
ignore such values as opposed to propagating them to the caller.  Before
this patch, attempts to add a request with such a Vary header for example
would fail, since the internal QueryCache() call when executing the
CachePutAllAction would fail.
2015-03-21 19:45:12 -04:00
Ehsan Akhgari
9e1a5685f5 Bug 1143894 - Part 2: Support Vary headers including multiple header names in DOM Cache; r=bkelly
The Vary header may include one or more HTTP header field names, so we
need to extract those names here, similar to the way that the
nsHttpChannel::ResponseWouldVary() function consumes the Vary header.
2015-03-21 19:45:12 -04:00
Ehsan Akhgari
8e39c2d25b Bug 1143894 - Part 1: Clear the ErrorResult message if InternalHeaders::Get fails; r=bkelly
InternalHeaders::Get() may throw NS_ERROR_TYPE_ERR with an associated message.
The semantics of ErrorResult dictate that the message needs to be consumed by
the time that the object gets destroyed, so we need to clear it before
returning in these two places.
2015-03-21 19:45:11 -04:00
Ehsan Akhgari
97417ab549 Bug 1143959 - Set the journal mode and foreign key pragmas for all DBActions; r=bkelly
Before this patch, we would only set these pragmas as part of CreateSchema
which runs in SetupAction.  This meant that the connection used to perform
other DBActions would not have had these pragmas applied.  As a result,
sqlite would not honor foreign keys on such connections, so the cascade
delete rules responsible for deleting rows from request_headers and
response_headers would not get executed when DBSchema::CachePut deleted the
old entry before adding a new one.

The test in the patch demonstrates how this could result in an observable
breakage.  Before this patch, the response headers stored in the cache for
the overwritten entry would reflect both `Mirrored: `foo' and `Mirrored: bar'
headers, which means that attempting to get this header on the cached
response would return the first entry, `foo'.
2015-03-17 08:18:28 -04:00
Ehsan Akhgari
6c67272d65 Bug 1142269 - Auto-vacuum the DOM Cache database; r=bkelly
It's easiest if we use auto_vaccum for now.  In the future if this
proves to be insufficient we can look into more sophisticated
vacuuming strategies.
2015-03-13 19:21:13 -04:00
Wes Kocher
828b178cb6 Backed out changeset b8d2fd1bb7f5 (bug 1142269) for mochitest-1 timeouts CLOSED TREE 2015-03-13 16:02:18 -07:00
Ehsan Akhgari
1591979266 Bug 1142269 - Auto-vacuum the DOM Cache database; r=bkelly
It's easiest if we use auto_vaccum for now.  In the future if this
proves to be insufficient we can look into more sophisticated
vacuuming strategies.
2015-03-13 14:40:27 -04:00
Ehsan Akhgari
fa83368ad6 Bug 1133763 - Part 4: Store the response's security info in the cache database; r=bkelly 2015-03-13 14:37:19 -04:00
Ehsan Akhgari
d7067fbb03 Bug 1133763 - Part 3: Wipe out the cache directory when detecting a change in the DB schema; r=bkelly 2015-03-13 14:37:18 -04:00
Ehsan Akhgari
fdb89bb0d4 Bug 1130452 - Remove support for the prefixMatch option in the service worker cache code; r=bkelly,baku 2015-03-06 08:19:31 -05:00
Ben Kelly
0c2e7a4f3c Bug 940273 - Part 4 - Initial implementation of Service Worker Cache. r=ehsan,baku,janv 2015-03-02 14:20:00 +01:00