Skip to content

Linux_pixel_7pro service_extensions_test is 2.04% flaky #157852

Closed

Description

@fluttergithubbot

The post-submit test builder Linux_pixel_7pro service_extensions_test had a flaky ratio 2.04% for the past (up to) 100 commits, which is above our 2.00% threshold.

One recent flaky example for a same commit: https://ci.chromium.org/ui/p/flutter/builders/prod/Linux_pixel_7pro%20service_extensions_test/4689
Commit: 4731859

Flaky builds:
https://ci.chromium.org/ui/p/flutter/builders/prod/Linux_pixel_7pro%20service_extensions_test/4689
https://ci.chromium.org/ui/p/flutter/builders/prod/Linux_pixel_7pro%20service_extensions_test/4662

Recent test runs:
https://flutter-dashboard.appspot.com/#/build?taskFilter=Linux_pixel_7pro%20service_extensions_test

Please follow https://github.com/flutter/flutter/blob/master/docs/infra/Reducing-Test-Flakiness.md#fixing-flaky-tests to fix the flakiness and enable the test back after validating the fix (internal dashboard to validate: go/flutter_test_flakiness).

Activity

  1. added
    c: flakeTests that sometimes, but not always, incorrectly pass
    P0Critical issues such as a build break or regression
    team-toolOwned by Flutter Tool team
    on Oct 30, 2024
  2. andrewkolos commented on Nov 4, 2024

    @andrewkolos
    Contributor

    In both failures I see that the test took 30 minutes and timed out. However, it looks like we stop seeing prints only a few minutes into the test. As an example, consider https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8732699153986675345/+/u/run_service_extensions_test/stdout. The test starts at 16:56:47, but the last print is at 16:58:04. Here is the tail end of the log:

    ...
    [2024-10-29 16:57:32.863364] [STDOUT] run:stdout: [   +2 ms] Connected to _flutterView/0xb4000071e462f390.
    [2024-10-29 16:57:32.864573] [STDOUT] run:stdout: [   +1 ms] Flutter run key commands.
    [2024-10-29 16:57:32.865163] [STDOUT] run:stdout: [        ] r Hot reload. 🔥🔥🔥
    [2024-10-29 16:57:32.865550] [STDOUT] run:stdout: [        ] R Hot restart.
    [2024-10-29 16:57:32.865561] [STDOUT] run:stdout: [        ] h List all available interactive commands.
    [2024-10-29 16:57:32.865565] [STDOUT] run:stdout: [        ] d Detach (terminate "flutter run" but leave application running).
    [2024-10-29 16:57:32.865571] [STDOUT] run:stdout: [        ] c Clear the screen
    [2024-10-29 16:57:32.865643] [STDOUT] run:stdout: [        ] q Quit (terminate the application on the device).
    [2024-10-29 16:57:32.866108] [STDOUT] run:stdout: [        ] A Dart VM Service on Pixel 7 Pro is available at: http://127.0.0.1:46795//
    [2024-10-29 16:57:32.866822] [STDOUT] service protocol connection available at port 46795
    [2024-10-29 16:57:32.866840] [STDOUT] run: ready!
    [2024-10-29 16:57:33.005493] [STDOUT] reassembling app...
    [2024-10-29 16:57:33.049390] [STDOUT] run:stdout: [ +182 ms] I/Choreographer(21274): Skipped 195 frames!  The application may be doing too much work on its main thread.
    [2024-10-29 16:57:33.114816] [STDOUT] run:stdout: [  +65 ms] The Flutter DevTools debugger and profiler on Pixel 7 Pro is available at: http://127.0.0.1:9100/?uri=http://127.0.0.1:46795//
    [2024-10-29 16:57:33.150731] [STDOUT] Extension: null
    [2024-10-29 16:57:33.150891] [STDOUT] {number: 2, startTime: 10690639555, elapsed: 524815, build: 18319, raster: 3354, vsyncOverhead: 503058}
    [2024-10-29 16:57:33.152473] [STDOUT] Executing "/opt/s/w/ir/cache/android/sdk/platform-tools/adb -s 34011FDH3001FK shell input tap 100 200" in "/opt/s/w/ir/x/w/rc/tmpv2r3hfe1/flutter sdk/dev/integration_tests/ui" with environment {BOT: true, LANG: en_US.UTF-8}
    [2024-10-29 16:57:33.153959] [STDOUT] run:stdout: [  +35 ms] W/FlutterJNI(21274): Tried to send a platform message response, but FlutterJNI was detached from native C++. Could not send. Response ID: 3
    [2024-10-29 16:57:33.153999] [STDOUT] run:stdout: [        ] W/FlutterJNI(21274): Tried to send a platform message response, but FlutterJNI was detached from native C++. Could not send. Response ID: 4
    [2024-10-29 16:57:38.537901] [STDOUT] run:stdout: [+5387 ms] D/ProfileInstaller(21274): Installing profile for com.yourcompany.integration_ui
    [2024-10-29 16:58:04.938296] [STDOUT] run:stdout: [+26400 ms] I/.integration_ui(21274): Background concurrent copying GC freed 17527(2183KB) AllocSpace objects, 3(60KB) LOS objects, 90% free, 2544KB/26MB, paused 398us,72us total 120.602ms
    
  3. andrewkolos commented on Nov 4, 2024

    @andrewkolos
    Contributor

    I think this is getting stuck here:

    final Future<Event> navigationFuture = navigationEvents.first;
    // This tap triggers a navigation event.
    unawaited(device.tap(100, 200));
    final Event navigationEvent = await navigationFuture;

    Recalling this line from the logs:

    W/FlutterJNI(21274): Tried to send a platform message response, but FlutterJNI was detached from native C++. Could not send. Response ID: 4
    

    I'm guessing the communication between Java world and the engine C++ code failed somehow.

  4. andrewkolos commented on Nov 4, 2024

    @andrewkolos
    Contributor

    I think this is getting stuck here:

    final Future<Event> navigationFuture = navigationEvents.first;
    // This tap triggers a navigation event.
    unawaited(device.tap(100, 200));
    final Event navigationEvent = await navigationFuture;

    Recalling this line from the logs:

    W/FlutterJNI(21274): Tried to send a platform message response, but FlutterJNI was detached from native C++. Could not send. Response ID: 4
    

    I'm guessing the communication between Java world and the engine C++ code failed somehow, hence us getting stuck awaiting navigationFuture.

  5. added
    P1High-priority issues at the top of the work list
    and removed
    P0Critical issues such as a build break or regression
    on Nov 4, 2024
  6. andrewkolos commented on Nov 4, 2024

    @andrewkolos
    Contributor

    From Matan via Discord:

    This warning message is coming from https://github.com/flutter/engine/blob/6271a92a376f368a8e5312022a966dc5f558ae5c/shell/platform/android/io/flutter/embedding/engine/FlutterJNI.java#L1105, and can only happen if detachFromNativeAndReleaseResources is invoked, which only really happens if the engine is destroyed (https://github.com/flutter/engine/blob/6271a92a376f368a8e5312022a966dc5f558ae5c/shell/platform/android/io/flutter/embedding/engine/FlutterEngine.java#L478).

    From Reid:

    Could it also happen if we never loaded the engine successfully?

  7. fluttergithubbot commented on Nov 13, 2024

    @fluttergithubbot
    ContributorAuthor

    [staging pool] flaky ratio for the past (up to) 100 commits between 2024-11-04 and 2024-11-12 is 0.00%. Flaky number: 0; total number: 100.

  8. fluttergithubbot commented on Nov 20, 2024

    @fluttergithubbot
    ContributorAuthor

    [staging pool] flaky ratio for the past (up to) 100 commits between 2024-11-12 and 2024-11-19 is 0.00%. Flaky number: 0; total number: 100.

  9. fluttergithubbot commented on Nov 27, 2024

    @fluttergithubbot
    ContributorAuthor

    [staging pool] flaky ratio for the past (up to) 100 commits between 2024-11-18 and 2024-11-26 is 0.00%. Flaky number: 0; total number: 100.

  10. fluttergithubbot commented on Dec 4, 2024

    @fluttergithubbot
    ContributorAuthor

    [staging pool] flaky ratio for the past (up to) 100 commits between 2024-11-21 and 2024-12-03 is 0.00%. Flaky number: 0; total number: 100.

  11. github-actions commented on Dec 18, 2024

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  12. locked as resolved and limited conversation to collaborators on Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work listc: flakeTests that sometimes, but not always, incorrectly passteam-toolOwned by Flutter Tool team

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions