Commit graph

18 commits

Author SHA1 Message Date
Jakob Ackermann
c12fc1293d Merge pull request #4184 from overleaf/jpa-incremental-caching
[perf] serviceWorker: fill the browser cache incrementally

GitOrigin-RevId: 3e72838d7521f1adc63661e8e4235aaa104fef79
2021-06-15 02:06:13 +00:00
Jakob Ackermann
a06031425b Merge pull request #4183 from overleaf/jpa-use-memory-views
[perf] serviceWorker: use memory view on large chunks instead of slicing

GitOrigin-RevId: 10933b25500aebc0b236315aceca4c44089c79e6
2021-06-15 02:06:09 +00:00
Jakob Ackermann
2293713e96 Merge pull request #4182 from overleaf/jpa-bg-coalesce-dynamic-chunk-request
[perf] serviceWorker: coalesce dynamic chunk requests

GitOrigin-RevId: 30c3d20dd7e3b82b68cf0d98a498a32e8071209b
2021-06-15 02:06:05 +00:00
Jakob Ackermann
c471cecf79 Merge pull request #4173 from overleaf/bg-add-service-worker-counter
[misc] serviceWorker: count all the things

GitOrigin-RevId: b9cef1ed96585e9b4c17b8eaf7a586770e06c984
2021-06-11 02:06:33 +00:00
Jakob Ackermann
fb249cb24f Merge pull request #4170 from overleaf/bg-add-serviceworker-metrics-for-fallback-requests
add metrics for fallback requests in service worker

GitOrigin-RevId: 092e0dd31e45e522c31508334f53bd6642054371
2021-06-11 02:06:28 +00:00
Jakob Ackermann
afd79f63ec Merge pull request #4168 from overleaf/jpa-service-worker-version
[misc] serviceWorker: add version to metrics for tracking changes

GitOrigin-RevId: 1c05aea2f578fe171dd02330ec7f76f18f02ff65
2021-06-11 02:06:19 +00:00
Jessica Lawshe
af631dc783 Merge pull request #4164 from overleaf/jpa-per-client-metrics
[misc] serviceWorker: per client metrics

GitOrigin-RevId: 80ec838a8f96837184c60f4c4d7c3a162ebd8634
2021-06-10 02:05:32 +00:00
Jessica Lawshe
4c6933b5b8 Merge pull request #4162 from overleaf/jpa-service-worker-error-reporting
[misc] serviceWorker: add error reporting using postMessage API

GitOrigin-RevId: db021d4f5cd5b7b8a0026b92d412112f60499c0b
2021-06-10 02:05:28 +00:00
Eric Mc Sween
d6b80789af Merge pull request #4128 from overleaf/jpa-expire-cache
[misc] serviceWorker: expire cache entries eventually

GitOrigin-RevId: d672ee5ac714d3c6f689ba635ec8e7397f02364c
2021-06-09 02:05:36 +00:00
Brian Gough
d61d714da8 Merge pull request #4153 from overleaf/bg-limit-worker-pdf-requests
limit pdf requests from service worker

GitOrigin-RevId: adb83b03325324a92567a2f7983d5cd6c3ea901a
2021-06-09 02:05:28 +00:00
Jakob Ackermann
d6454a84bb Merge pull request #4104 from overleaf/jpa-pdf-object-caching
[misc] serviceWorker: back fill object context when sent by the backend

GitOrigin-RevId: 1bddbff9b2c996ec71f9c493e6896a22d1e27560
2021-06-01 02:05:43 +00:00
Jakob Ackermann
2f08406109 Merge pull request #4093 from overleaf/jpa-pdf-js-chunked-transfer-threshold
[misc] serviceWorker: tweak detection of PDF.js chunked transfer probe

GitOrigin-RevId: ed55618939e94b24e5a732ac90f31bd99508ec3c
2021-05-27 02:05:52 +00:00
Jakob Ackermann
f0b3d8a26a Merge pull request #4076 from overleaf/jpa-events-split-test
[misc] submit events and prepare roll-out for pdf caching w/ split test

GitOrigin-RevId: a7b7af65e1adf5bf003b65d96f1641a343b4b09c
2021-05-22 02:05:44 +00:00
Jakob Ackermann
f49a539c91 Merge pull request #4073 from overleaf/jpa-verify-chunks
[misc] serviceWorker: add optional verification of chunk

GitOrigin-RevId: 7fe9619ab9a928409cdf665d938734bb6a77f853
2021-05-22 02:05:41 +00:00
Jakob Ackermann
9ad248af41 Merge pull request #4060 from overleaf/jpa-service-worker-metrics
[misc] serviceWorker: collect metrics for cached vs fetched performance

GitOrigin-RevId: db29bc77801d71008ba61ffb7e335a67cd5bf16d
2021-05-22 02:05:35 +00:00
Jakob Ackermann
4fc8cb842e Merge pull request #4053 from overleaf/jpa-fix-clsi-server-id-case
[misc] serviceWorker: fix casing of clsiServerId in query

GitOrigin-RevId: ae4b9d16b053ea36ce701f1f467eed34699751d1
2021-05-18 02:08:09 +00:00
Jakob Ackermann
234cabdcf5 Merge pull request #4051 from overleaf/jpa-fix-lint
[misc] fix lint

GitOrigin-RevId: 56db2a752a02801a9b6fd379f130a258a84c55b0
2021-05-18 02:08:05 +00:00
Jakob Ackermann
7db7cd4a49 [misc] merge pdf caching into main (#4033)
* [frontend] WIP: pdf caching using service worker -- squashed

Ref: 920fbaa00b31530f7c457a2d93bad5e553798057
Co-Authored-By: Brian Gough <brian.gough@overleaf.com>
Co-Authored-By: Eric Mc Sween <eric.mcsween@overleaf.com>

* [misc] add contentId into the URL for protecting PDF stream contents

* [misc] gracefully handle missing ranges in serviceWorker

* [misc] support PDF stream caching for anonymous users

* [misc] polish header names and add URL to error message when fetch fails

* [misc] polish event handler registration

* [misc] limit serviceWorker scope to /project/ -- trailing slash

This will block the service worker from intercepting requests on the
 project dashboard.

* [misc] add per-request feature flag for enabling PDF stream caching

* [misc] expose compile stats and timings to the frontend

* [misc] serviceWorker: support clsiServerId and compileGroup url params

* [misc] serviceWorker: polish header maps

* [misc] serviceWorker: drop TODO for p-limit -- the browser has a queue

* [misc] serviceWorker: drop verbose log message on every fetch

* [misc] cut down size of diff in backend code

* [misc] add test case for forwarding of pdf caching and metrics details

* [misc] serviceWorker: drop all the log lines

* [misc] serviceWorker: add boundary guards to the compile request regex

Co-authored-by: Brian Gough <brian.gough@overleaf.com>
Co-authored-by: Eric Mc Sween <eric.mcsween@overleaf.com>
GitOrigin-RevId: 4b291b4a4f2866cf07bccf8ec9068f33bbfdc916
2021-05-18 02:07:57 +00:00