Fixed
Status Update
Comments
lo...@gmail.com <lo...@gmail.com> #2
Update: this issue will not reproduce currently if you do not take slices with parent slice
I forked FrameTimingMetric in my project because of this issue:https://issuetracker.google.com/issues/340206285
So it should be fixed if you remove parent id check and check for frame IDs in filtered slices
I forked FrameTimingMetric in my project because of this issue:
So it should be fixed if you remove parent id check and check for frame IDs in filtered slices
ma...@google.com <ma...@google.com>
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
Author: Chris Craik <
Link:
Correctly ignored resynced doFrame slices
Expand for full commit details
Correctly ignored resynced doFrame slices
Fixes: 394610806
Relnote: Fixes crash in FrameTimingMetric when resynced frames occur
Test: FrameTimingQueryTest
Change-Id: I7c6f414e263eca6b6085b76e8801f64fa50586f0
Files:
- M
benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/FrameTimingQueryTest.kt
- M
benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/FrameTimingQuery.kt
Hash: 0c21d8268751e62e540f4f3d3ac2e18ff6f3e72f
Date: Tue Feb 25 13:31:05 2025
na...@google.com <na...@google.com> #4
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.benchmark:benchmark-macro:1.4.0-alpha09
Description
Component used: Jetpack macrobenchmark Version used: 1.4.0-alpha07 Devices/Android versions reproduced on: Pixel 4 XL Android 14 aosp
Sometimes there are resynced frames when frame is prepared for too long: "Choreographer#doFrame - resynced to 8643135 in 21,7ms" and there is logic added here to filter these out in FrameTimingQuery:
But there's a check later that checks if all slices have frameId:
Frame id is number that comes after "Choreographer#doFrame" And it checks for frameId in unfiltered slices where
Choreographer#doFrame - resynced to 8643135 in 21,7ms
is present. It tries to convert"-"
to id, fails to do so and returns null.It results in test failing because of that check.
Should be easy fix - just filter first and check for frameIds presence in filtered traces