0
Verwendung in Feuerbasis appengine:Retry für bestimmte Anzahl von Malen auf Feuerbasis Transaktion abbrechen
DatabaseReference upvotesRef = FirebaseDatabase.getInstance().getReference().child("TEST");
upvotesRef.runTransaction(new Transaction.Handler() {
@Override
public Transaction.Result doTransaction(MutableData mutableData) {
// null cases handled
mutableData.setValue(object);
return Transaction.success(mutableData);
}
@Override
public void onComplete(DatabaseError databaseError, boolean committed, DataSnapshot dataSnapshot) {
if(! committed) {
// Retry for x times
// Throw error on the (x+1)th time
}
}
}, false);
für einen bestimmten Knoten:
1. die Transaktion auf das erste Mal versagt und nicht erneut versucht.
2. Funktioniert gut vom zweiten Mal.
Also, ich möchte die Transaktion für x mal im Falle eines Fehlers wiederholen, und eine Ausnahme zum (x + 1) -ten Zeitpunkt der Ausführung auslösen. Vielen Dank!
Warum die Transaktion beim ersten Versuch fehlschlägt? – JamieB
Firebase-Transaktionen werden automatisch wiederholt. Welchen Fehler bekommst du? –
DatabaseError: Der Vorgang musste aufgrund einer Netzwerkunterbrechung abgebrochen werden. –