JanusGraph/janusgraph

Rollback documentation and code inconsistency

Open

#1.077 geöffnet am 21. Mai 2018

Auf GitHub ansehen
 (2 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Java (1.137 Forks)batch import
Hacktoberfestarea/docshelp wanted

Repository-Metriken

Stars
 (4.985 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 3T 18h) (12 gemergte PRs in 30 T)

Beschreibung

There is a sentence in the transactions' documentation:

If a commit() transactions fails, it should be terminated manually with rollback() after catching the failure.

And there is a code of commit() implementation:

try {
    if (this.hasModifications()) {
        this.graph.commit(this.addedRelations.getAll(), this.deletedRelations.values(), this);
    } else {
        this.txHandle.commit();
    }

    success = true;
} catch (Exception var9) {
    try {
        this.txHandle.rollback();
    } catch (BackendException var8) {
        throw new JanusGraphException("Could not rollback after a failed commit", var9);
    }

    throw new JanusGraphException("Could not commit transaction due to exception during persistence", var9);
}

As I see here, the rollback() is called if commit() is failed. I think that the documentation should say: If a commit() transactions fails, it will be terminated automatically with rollback() or something like that. Maybe some clarification should be put there.

Contributor Guide