Skip to content

Regression in cloud_firestore and firebase_database Android Transactions #32657

@collinjackson

Description

@collinjackson

I'm noticing a regression in the transactions integration test on Android on the latest Flutter master. The test is passing on Flutter stable.

Command to run test:

flutter drive test_driver/cloud_firestore.dart 

On Flutter stable:

I/flutter ( 6535): Observatory listening on http://127.0.0.1:34300/tsSx9QLxaFA=/
[info ] FlutterDriver: Connecting to Flutter application at http://127.0.0.1:61653/tsSx9QLxaFA=/
[trace] FlutterDriver: Isolate found with number: 617548898
[trace] FlutterDriver: Isolate is paused at start.
[trace] FlutterDriver: Attempting to resume isolate
[trace] FlutterDriver: Waiting for service extension
I/flutter ( 6535): 00:00 +0: Firestore getDocuments
[info ] FlutterDriver: Connected to Flutter application.
I/flutter ( 6535): 00:01 +1: Firestore increment
I/flutter ( 6535): 00:03 +2: Firestore runTransaction
I/flutter ( 6535): 00:04 +3: Firestore pagination
I/flutter ( 6535): 00:05 +4: (tearDownAll)
I/flutter ( 6535): 00:05 +5: All tests passed!

On Flutter master:

[info ] FlutterDriver: Connected to Flutter application.
I/flutter ( 9558): 00:00 +0: Firestore getDocuments
I/flutter ( 9558): 00:01 +1: Firestore increment
I/flutter ( 9558): 00:02 +2: Firestore runTransaction
I/flutter ( 9558): 00:32 +2: Firestore runTransaction [E]
I/flutter ( 9558):   TimeoutException after 0:00:30.000000: Test timed out after 30 seconds.
I/flutter ( 9558):   package:test_api/src/backend/invoker.dart 332:28              Invoker._handleError.<fn>
I/flutter ( 9558):   dart:async/zone.dart 1120:38                                  _rootRun
I/flutter ( 9558):   dart:async/zone.dart 1021:19                                  _CustomZone.run
I/flutter ( 9558):   package:test_api/src/backend/invoker.dart 330:10              Invoker._handleError
I/flutter ( 9558):   package:test_api/src/backend/invoker.dart 283:9               Invoker.heartbeat.<fn>.<fn>
I/flutter ( 9558):   dart:async/zone.dart 1124:13                                  _rootRun
I/flutter ( 9558):   dart:async/zone.dart 1021:19                                  _CustomZone.run
I/flutter ( 9558):   package:test_api/src/backend/invoker.dart 281:38              Invoker.heartbeat.<fn>
I/flutter ( 9558):   package:stack_trace/src/stack_zone_specification.dart 209:15  StackZoneSpecification._run
I/flutter ( 9558):   package:stack_trace/src/stack_zone_specification.dart 119:48  StackZoneSpecification._registerCallback.<fn>
I/flutter ( 9558):   dart:async/zone.dart 1124:13                                  _rootRun
I/flutter ( 9558):   dart:async/zone.dart 1021:19                                  _CustomZone.run
I/flutter ( 9558):   dart:a
I/flutter ( 9558): 00:32 +2 -1: Firestore pagination
I/flutter ( 9558): 00:34 +3 -1: (tearDownAll)
I/flutter ( 9558): 00:34 +4 -1: Some tests failed.

The failure seems repeatable rather than a one-time flake.

It's possible that a Flutter platform change is interfering with the Android transactions implementation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: crashStack traces logged to the consolec: regressionIt was better in the past than it is nowp: cloud_firestoreObsolete - Firebase Firestore pluginp: firebaseObsolete - Firebase pluginsp: firebase_databaseObsolete - The Firebase Database pluginpackageflutter/packages repository. See also p: labels.platform-androidAndroid applications specifically

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions