Skip to content

[Regression] [Android] [Maps] Map locks up after rendering 50 Polylines #20502

Description

@mfeingol

Description

My app has a scenario in which it renders a number of GPX tracks. When this number is relatively large (50), the process hangs and appears to be stuck in an infinite loop. Nothing visible in the managed debugger, but endless trace output like this:

[app.Android] Explicit concurrent copying GC freed 3(31KB) AllocSpace objects, 0(0B) LOS objects, 49% free, 12MB/24MB, paused 243us,39us total 17.795ms
[monodroid-gc] 46192 outstanding GREFs. Performing a full GC!

Steps to Reproduce

Run the repro app. Inside the app, click on the Lots of Polylines option at the bottom of the menu.

If the page renders a map with some lines, then the test succeeded and there is no bug.

If the app hangs with unhappy GC messages, then the bug has been reproduced.

Change the count and steps values in the LotsOfPolylinesPage class to simulate a different number of tracks and number of locations in each track. The app falls over at around 46000 total locations.

Link to public reproduction project repository

https://github.com/mfeingol/repros/tree/master/LotsOfPolylinesRepro

Version with bug

8.0.6

Is this a regression from previous behavior?

Yes, this used to work in Xamarin.Forms

Last version that worked well

8.0.3

Affected platforms

Android

Affected platform versions

13

Did you find any workaround?

No workaround.

Relevant log output

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-controls-mapMap / Mapsmigration-compatibilityXamarin.Forms to .NET MAUI Migration, Upgrade Assistant, Try-Convertplatform/androids/triagedIssue has been revieweds/verifiedVerified / Reproducible Issue ready for Engineering Triaget/bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions