Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Watch optimizer cache invalidation #24172

Merged
merged 20 commits into from Nov 28, 2018

Conversation

Projects
None yet
5 participants
@mistic
Copy link
Member

commented Oct 17, 2018

This PR gave us the ability to control the cache invalidation for the cache-loader caches using 2 criteria: a sha hash for the kibana yarn.lock file and also a sha hash for the optimizer configuration file (because if we change the optimizer configuration the cache could become invalid).

It was based in an initial PR from Spencer #20506 which I will close in favor of this one.

spalger and others added some commits Jul 6, 2018

chore(NA): cherry pick work from spencer on impleting the cache inval…
…idation system and merging it with current master.

@mistic mistic requested a review from joshdover Oct 18, 2018

@joshdover
Copy link
Member

left a comment

LGTM

Show resolved Hide resolved src/optimize/watch/watch_cache.ts Outdated
Show resolved Hide resolved src/optimize/watch/optmzr_role.js

mistic added some commits Oct 21, 2018

refact(NA): just pass kibanaHapiServer.log function directly instead …
…of an anonimous function that calls the kibanaHapiServer.log one.

@elastic elastic deleted a comment from elasticmachine Oct 24, 2018

Show resolved Hide resolved src/optimize/watch/watch_cache.ts Outdated
Show resolved Hide resolved src/optimize/watch/watch_cache.ts Outdated
Show resolved Hide resolved src/optimize/watch/watch_cache.ts Outdated
@mistic

This comment has been minimized.

Copy link
Member Author

commented Nov 13, 2018

@jbudz I just applied the changes according your review! Can you take a look again please? 😃

@elastic elastic deleted a comment from elasticmachine Nov 15, 2018

@mistic mistic changed the title Watch optimizer cache invalidation (optimizer cache and dlls) Watch optimizer cache invalidation Nov 16, 2018

@jbudz

jbudz approved these changes Nov 16, 2018

@elastic elastic deleted a comment from elasticmachine Nov 21, 2018

@elastic elastic deleted a comment from elasticmachine Nov 21, 2018

@elastic elastic deleted a comment from elasticmachine Nov 21, 2018

@mistic mistic force-pushed the mistic:kbn-bundles-cache-invalidation branch from ee7504c to 15a97e6 Nov 21, 2018

@mistic mistic force-pushed the mistic:kbn-bundles-cache-invalidation branch from 776acd2 to 9a674d9 Nov 22, 2018

@elastic elastic deleted a comment from elasticmachine Nov 22, 2018

@mistic

This comment has been minimized.

Copy link
Member Author

commented Nov 27, 2018

We'll move the removed bits that took care of the dlls cache deletion directly into the DLL pr, once we get this one merged.

@elasticmachine

This comment has been minimized.

Copy link
Collaborator

commented Nov 27, 2018

mistic added some commits Nov 28, 2018

@elastic elastic deleted a comment from elasticmachine Nov 28, 2018

@elastic elastic deleted a comment from elasticmachine Nov 28, 2018

@elastic elastic deleted a comment from elasticmachine Nov 28, 2018

@elastic elastic deleted a comment from elasticmachine Nov 28, 2018

@elasticmachine

This comment has been minimized.

Copy link
Collaborator

commented Nov 28, 2018

@mistic mistic merged commit afb581f into elastic:master Nov 28, 2018

2 checks passed

CLA Commit author is a member of Elasticsearch
Details
kibana-ci Build finished.
Details

mistic added a commit to mistic/kibana that referenced this pull request Nov 28, 2018

Watch optimizer cache invalidation (elastic#24172)
* chore(NA): cherry pick work from spencer on impleting the cache invalidation system and merging it with current master.

* feat(NA): add support for dlls bundle into the cache state invalidation system.

* chore(NA): merge with master.

* feat(NA): first working version for the watch cache.

* feat(NA): added logger, correct cache delete and removed last todos.

* feat(NA): remove some useless features for the time being.

* refact(NA): just pass kibanaHapiServer.log function directly instead of an anonimous function that calls the kibanaHapiServer.log one.

* refact(NA): move everything to async.

* refact(NA): remove dll mentions.

* chore(NA): removed types/mkdirp as we dont use mkdirp into typescript.

mistic added a commit that referenced this pull request Nov 28, 2018

Watch optimizer cache invalidation (#24172) (#26319)
* chore(NA): cherry pick work from spencer on impleting the cache invalidation system and merging it with current master.

* feat(NA): add support for dlls bundle into the cache state invalidation system.

* chore(NA): merge with master.

* feat(NA): first working version for the watch cache.

* feat(NA): added logger, correct cache delete and removed last todos.

* feat(NA): remove some useless features for the time being.

* refact(NA): just pass kibanaHapiServer.log function directly instead of an anonimous function that calls the kibanaHapiServer.log one.

* refact(NA): move everything to async.

* refact(NA): remove dll mentions.

* chore(NA): removed types/mkdirp as we dont use mkdirp into typescript.
@mistic

This comment has been minimized.

Copy link
Member Author

commented Nov 28, 2018

6.x: 88d0c43

sebelga added a commit that referenced this pull request Nov 28, 2018

Merge upstream master (#26322)
* [APM] Fix horizontal scrollbar being visible in windows 8.1 (#25988)

* [APM] Changed 'Response Time' to 'Duration' in transactions screens (#25990)

* translate InfraOps visualization component (Part 3) (#25213)

* translate InfraOps visualization component (Part 3 - part of folder components)

* update translation of Infra Ops vizualization component (Part 3)

* update translation of Infra Ops vizualization component (Part 3)

* change some ids and add pluralization

* update Infra Ops Part 3 - change some ids, change some intl.formatMessage() to <FormattedMessage> and directly wrap some classes by injectI18n()

* update Infra-III - add static to displayName

* [i18n] Translate Agg_types(part_3) (#26118)

* Translate agg_types - metrics

* Fix issues

* [ML] Aggregate anomalies table data using configured Kibana timezone (#26192)

* [ML] Aggregate anomalies table data using configured Kibana timezone

* [ML] Move dataFormatTz prop out of controller scope

* [ML] Fix alignment of filter icons in anomalies table (#26253)

* [ML] Fix alignment of filter icons in anomalies table

* [ML] Teak y position of icons in expanded row of table

* translate sample data (#26069)

translate sample data

* [ML] Wrap controller initialization in assertions. (#26265)

- The controller tests introduced in #25382 had a flaw: If a controller initialization would fail and throw an error, that test suite wouldn't be able to clean up any stubs. So tests using the same stubs would report and error because the stubs couldn't be wrapped again.
- This PR wraps every controller initialization inside an assertion and catches those errors properly as part of the test.

* [APM] fixes #20145 by displaying span.context.http.url in the span details flyout (#26238)

* Fix spaces license check (#26270)

## Summary

Allows the public spaces API to work with a gold license

Resolves #26271

* Job Info button in Reporting Listing (#25421)

* Job Info button in Reporting Listing

* use lodash directly

* start of flyout use

* description list in flyout

* capitalize

* undefined guard

* expire info on close

* add jest test

* better at error handling + messaging

* Add description for vis types (#26243)

* [migrations] Throw error if reindex task fails (#26062)

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* [Reporting] Better logging for waitForSelector failure (#25762)

* [Reporting] Better logging for waitForSelector failure

* break waitForSelector

* experimental changes

* cleanup/consistency

* fix some test report title strings

* test disable chromium

* roll back test code

* take out non-working phantom changes

* roll back disable chromium test

* allow logger to use curried tags

* temporarily re-do report failure-causing change for test

* replace newline with escaped for single log line

* undo test change

* remove obsolete test

* [kbn/pm] allow packages to define extra paths to clean (#26132)

I noticed some discussion about how kbn clean should probably clear out the `.eslintcache` file, since it doesn't handle changes in related modules (for things like the import plugin) and it would be nice if `yarn kbn clean` took care of the issue. I figured it's not a bad idea, but adding `.eslintcache` directly to `@kbn/pm` felt wrong, so instead I've added another config options that can go in the package.json file, `clean.extraPatterns`. This array of patterns is passed into `del()` so that it can include things like negation.

As the name suggests this doesn't override the initial paths, just adds some extras that will be checked and cleared when `yarn kbn clean` is run.

* [config] fix logging.useUTC deprecation unset (#26053)

* Extend precommit hook script to support git GUI apps (#25883)

* feat(NA): extend support from precommit hook to git GUI apps.

* docs(NA): more descriptive error message.

* [DOCS] Clarify monitoring dependencies (#26229)

* apm: add ECS fields to index pattern (#26214)

* support standard license (#26294)

* [kbn-pm] update build

* [eslint] use disallow license header rule (#26309)

Fixes #26295

There are several places where we have accidentally added new license headers with linters but failed to remove old license headers manually. This prevents that by applying the an inverted version of the license headers rule that removed invalid license headers when files are moved.

* Bump node to 8.14.0 (#26313)

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>

* Watch optimizer cache invalidation  (#24172)

* chore(NA): cherry pick work from spencer on impleting the cache invalidation system and merging it with current master.

* feat(NA): add support for dlls bundle into the cache state invalidation system.

* chore(NA): merge with master.

* feat(NA): first working version for the watch cache.

* feat(NA): added logger, correct cache delete and removed last todos.

* feat(NA): remove some useless features for the time being.

* refact(NA): just pass kibanaHapiServer.log function directly instead of an anonimous function that calls the kibanaHapiServer.log one.

* refact(NA): move everything to async.

* refact(NA): remove dll mentions.

* chore(NA): removed types/mkdirp as we dont use mkdirp into typescript.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.