Skip to content

Do not apply geojson async setting data in specific scenario #381

@kiryldz

Description

@kiryldz

Environment

  • Android OS version: any
  • Devices affected: any
  • Maps SDK Version: v10.0.0-beta.21

Observed behavior and steps to reproduce

As stated here:

Imagine we're setting some data to GeoJsonSource using feature, featureCollection or geometry.
Issue that I'm noticing is wrt the cancellation policy - let's imagine these 3 calls made one by one:

  1. U1 async
  2. U2 sync
  3. U3 async

The cancellation policy is solely based on the ignoreParsedGeoJson flag, which means that U2 will set it, but U3 will immediately unset it. This will result in this order of updates being rendered:

  1. U2
  2. U1
  3. U3

Since there was a sync update (U2) scheduled after an async update (U1), that async update should in all cases be dismissed and never rendered, but in the current setup, I see this risk of it appearing anyway.

Expected behavior

Result should be:

  1. U2
  2. U3

Notes / preliminary analysis

Additional links and references

Metadata

Metadata

Assignees

Labels

bug 🪲Something isn't workingp2

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions