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

[maps] abort sync data if any data request fails #87381

Merged
merged 4 commits into from
Jan 11, 2021

Conversation

nreese
Copy link
Contributor

@nreese nreese commented Jan 5, 2021

While investigating #87310, I discovered that an aborted data request in vectorLayer.syncData does not stop the syncData thread.

Below is the case for making these changes

  1. Map has layer requires style meta.
  2. user loads map with timerange
  3. _syncData calls _syncSourceStyleMeta which starts a data request to fetch the style meta
  4. Before _syncSourceStyleMeta returns, user changes time range.
  5. This triggers another _syncData call which calls _syncSourceStyleMeta. The original _syncSourceStyleMeta is aborted but its run context is not. The original thread then attempts to call the rest of _syncData statements like _syncSource.

What should happen is that the syncData thread ends on a data load error instead of continuing execution.

@nreese nreese added [Deprecated-Use Team:Presentation]Team:Geo Former Team Label for Geo Team. Now use Team:Presentation v8.0.0 release_note:skip Skip the PR/issue when compiling release notes v7.12.0 labels Jan 5, 2021
@nreese nreese requested a review from thomasneirynck January 5, 2021 20:12
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-gis (Team:Geo)

@nreese
Copy link
Contributor Author

nreese commented Jan 11, 2021

@elasticmachine merge upstream

Copy link
Contributor

@thomasneirynck thomasneirynck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just one comment, thx!

@kibanamachine
Copy link
Contributor

💚 Build Succeeded

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
maps 2.9MB 2.9MB -225.0B

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@nreese nreese merged commit 89e7cd6 into elastic:master Jan 11, 2021
nreese added a commit to nreese/kibana that referenced this pull request Jan 11, 2021
* [maps] abort sync data if any data request fails

* review feedback

* fix broken rename of e to error

Co-authored-by: Kibana Machine <[email protected]>
nreese added a commit that referenced this pull request Jan 11, 2021
* [maps] abort sync data if any data request fails

* review feedback

* fix broken rename of e to error

Co-authored-by: Kibana Machine <[email protected]>

Co-authored-by: Kibana Machine <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Deprecated-Use Team:Presentation]Team:Geo Former Team Label for Geo Team. Now use Team:Presentation release_note:skip Skip the PR/issue when compiling release notes v7.12.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants