-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Mask timeslider #102046
Mask timeslider #102046
Conversation
Pinging @elastic/kibana-gis (Team:Geo) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thx!
most of this was discussed offline with @nreese, but for completeness.
The current approach is hard to generalize to .mvt
based data. For mvt
-data, the source cannot determine up front whether all data is on-screen. Instead, it needs to inspect the actual responses of the tiles (reading metadata from tiles is being worked on here #94811).
As next steps, we will introduce in this PR:
- pull up determining whether data is complete into a layer-method. This can be implemented differently, based per layer type (in practice, there will be a different implementations for
vector_layer
andtiled_vector_layer
). - source could stilll make a pre-fetch call to fetch all data for the entire-range, rather than just the timeslice. This would mean that es-sources with the
LIMIT
-scaling type can still prefetch all data for the entire range (rather than just the timeslice). This is an optimization that would only work theLIMIT
-scaling-type. We determine it is valuable enough to release, mainly because a lot of the mvt-work on the ES/and Kibana sides is still in flux ([Maps] [Meta] .mvt feature completeness #79868, Support .mvt vector tile format elasticsearch#58696).
@elasticmachine merge upstream |
jenkins, test this (restarting due to jenkins upgrade) |
@elasticmachine merge upstream |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thx, +1 on overall changes. I think we should be able to hack on tile-based data here as well (tbd).
One small bug I believe, see comments.
x-pack/plugins/maps/public/classes/layers/blended_vector_layer/blended_vector_layer.ts
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks, this is a great improvement. It will make timeslider work for even more datasets.
See one comment to improve readability.
x-pack/plugins/maps/public/classes/layers/blended_vector_layer/blended_vector_layer.ts
Outdated
Show resolved
Hide resolved
@elasticmachine merge upstream |
💚 Build SucceededMetrics [docs]Async chunks
History
To update your PR or re-run it, just comment with: |
💔 Backport failed
To backport manually run: |
7.x backport #103132 |
Client side masking was removed from original timeslider implementation.
This PR brings back client side masking to timeslider with the following improvements
ILayer.syncLayerWithMB
does not need to make async