Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Each month we run the complete time series across all the dates, even though only the latest month is updated each time. This is wasteful and sloooow, as discussed in #110 and also in requests to expand the lens's.
This PR changes the default to check the latest date already in the results JSON on Google Cloud Storage and then adds some
WHERE
clauses to only look after those dates, and the merges the new data in.For certain queries (CrUX and
blink_features
) it runs the full time series (as per the old way) as joins are messy and these are quick anyway.Using the
-f
flag forces the whole time series to regenerate, including the date limits the future date (e.g. to prevent including partial data when desktop for next run is already complete). It can also be used with the previously introduced-r
option to limit full reruns to one or more reports.To test I ran the
drupal
lens for the June rerun (see HTTPArchive/httparchive.org#361) with this new method and it only took a couple of hours to run (though ignore some of thea11y
queries fordrupal
as messed those up while testing - rerunning now). Thewordpress
lens, run with the old method, is still going nearly 24 hours later. I'll run themagento
lens using this new method after merging this as a post-release test.