Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document performance impact of TWO_PHASE vs. LOCAL TransactionType #5075

Closed
jerrinot opened this issue Apr 16, 2015 · 2 comments

Comments

Projects
None yet
3 participants
@jerrinot
Copy link
Contributor

commented Apr 16, 2015

We have 2 types of TransactionType

public enum TransactionType {

        /**
         * The two phase commit is more than the classic two phase commit (if you want a regular two phase commit,
         * use local). Before it commits, it copies the commit-log to other members, so in case of member failure,
         * another member can complete the commit.
         */
        TWO_PHASE(1),

        /**
         * Unlike the name suggests, local is a two phase commit. So first all cohorts are asked
         * to prepare if everyone agrees then all cohorts are asked to commit. The problem happens when
         * during the commit phase one or more members crash, that the system could be left in an inconsistent state.
         */
        LOCAL(2);

I ran our MapTransactionTest in a lab and measured effect of the TWO_PHASE type. All other settings were kept as default.
Throughput with TWO_PHASE - 27,759 ops / s
Throughput with LOCAL - 73,680 ops / s

That's a massive difference! TWO_PHASE happens to be a default type.

Our documentation already has a nice chapter describing TransactionType, but there is nothing about performance implications.

@bwzhang2011

This comment has been minimized.

Copy link

commented Apr 16, 2015

+1

@bwzhang2011

This comment has been minimized.

Copy link

commented Apr 20, 2015

@jerrinot, would you mind leaving more message for the performance issue between LOCAL and TWO-PHASE ?

@Serdaro Serdaro added this to the 3.6 milestone Jun 22, 2015

@Serdaro Serdaro closed this in a83d001 Jun 26, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.