Skip to content

flutter->packages roller blocked on google_maps_flutter_android regression due to enabling Impeller #152691

@stuartmorgan-g

Description

@stuartmorgan-g

The flutter/flutter->flutter/packages roller is a few days behind, due to a persistent regression that was not immediately obvious because of the macOS host infra flake causing most rolls to fail without manual effort recently. I've been bisecting the failure, and have narrowed it down to
f817e51...a7bd806
as a definite window, and almost certainly (pending finalization of that roll)
e2e4398...a7bd806

The latter window is one added test, some Skia rolls, and very notably flutter/engine#54156 which enabled Impeller by default for Android.
[Edited now that I've narrowed from a window to an exact commit]
this commit, which only contains flutter/engine#54156, which enabled Impeller by default for Android. (flutter/packages#7284 is the PR that confirms this: a flutter/packages roll that only rolls that one commit, and introduces the crash.

Here's an example failure run: https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8740895214831365361/+/u/Run_package_tests/Firebase_Test_Lab/stdout
There's a ton in that logging, but if you search for "Application crashed" and look at the FTL link there, it goes to the failure.

An example failure output:

Build fingerprint: 'google/panther/panther:13/TQ3A.230605.012/10204971:user/release-keys'
Revision: 'MP1.0'
ABI: 'arm64'
Timestamp: 2024-07-31 06:04:29.386233348-0700
Process uptime: 3s
Cmdline: io.flutter.plugins.googlemapsexample
pid: 20262, tid: 20262, name: oglemapsexample  >>> io.flutter.plugins.googlemapsexample <<<
uid: 10261
tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
Abort message: '[FATAL:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1699)] Check failed: fml::jni::CheckException(env). '
    x0  0000000000000000  x1  0000000000004f26  x2  0000000000000006  x3  0000007fc414fc70
    x4  6d602e6c716e6573  x5  6d602e6c716e6573  x6  6d602e6c716e6573  x7  7f7f7f7f7f7f7f7f
    x8  00000000000000f0  x9  0000007d625469e0  x10 0000000000000001  x11 0000007d62588370
    x12 000000000000065c  x13 000000000000007e  x14 0000007fc414eb40  x15 000000079e8e5c5d
    x16 0000007d625f5d50  x17 0000007d625d0eb0  x18 0000007d6676a000  x19 0000000000004f26
    x20 0000000000004f26  x21 00000000ffffffff  x22 b400007b65031f50  x23 0000007b15089b38
    x24 0000000000000000  x25 0000000000000920  x26 0000000000000000  x27 0000007fc414ff68
    x28 00000000000000e9  x29 0000007fc414fcf0
    lr  0000007d625781c8  sp  0000007fc414fc50  pc  0000007d625781f4  pst 0000000000001000
backtrace:
      #00 pc 00000000000531f4  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: dc4001c2ef2dfc23467040797a96840c)
      #01 pc 0000000001cedf9c  /data/app/~~ea2V_pYwTb455BI-pIrB8g==/io.flutter.plugins.googlemapsexample-

I'm going to do more spot checking of failed rolls, but it looks like this is happening in either all or almost all of the roll PRs since that point.

So there are two serious problems here:

  • the roller is blocked (which we could work around by disabling all google_maps_flutter tests for now, but...)
  • google_maps_flutter seems to have very persistent crashing issues under Impeller.

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work lista: platform-viewsEmbedding Android/iOS views in Flutter appse: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.p: mapsGoogle Maps pluginpackageflutter/packages repository. See also p: labels.platform-androidAndroid applications specificallyteam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions