| Index: app/lib/backend.dart
|
| diff --git a/app/lib/backend.dart b/app/lib/backend.dart
|
| index 6234b7f0e594fc32a2e08e3081749b1ed77e9fe9..69f204ed5b35b4a7ef69e7914f6a34f87544259b 100644
|
| --- a/app/lib/backend.dart
|
| +++ b/app/lib/backend.dart
|
| @@ -314,7 +314,15 @@ class GCloudPackageRepository extends PackageRepository {
|
| newVersion.pubspec.jsonString);
|
| } catch (error, stack) {
|
| _logger.warning('Error while committing: $error, $stack');
|
| - await T.rollback();
|
| +
|
| + // This call might fail if the transaction has already been
|
| + // committed/rolled back or the transaction failed.
|
| + //
|
| + // In which case we simply ignore the rollback error and rethrow the
|
| + // original error.
|
| + try {
|
| + await T.rollback();
|
| + } catch (_) {}
|
| rethrow;
|
| }
|
| });
|
|
|