Skip to content

BOOKKEEPER-961 - Assing read/write requests for same ledger to a single thread#69

Closed
merlimat wants to merge 1 commit into
apache:masterfrom
merlimat:bk-fixed-ledger-thread
Closed

BOOKKEEPER-961 - Assing read/write requests for same ledger to a single thread#69
merlimat wants to merge 1 commit into
apache:masterfrom
merlimat:bk-fixed-ledger-thread

Conversation

@merlimat
Copy link
Copy Markdown
Contributor

@merlimat merlimat commented Nov 2, 2016

When entries for the same ledger are processed by the bookie we should avoid
the reordering of the request. Currently, if multiple read/write threads are
configured, the requests will be passed to the executor and writes for same
ledger will be spread across multiple threads.

This poses 2 issues:

  1. Mutex contention to access the LedgerDescriptor
  2. If the client receives add-entry acks out of order it has anyway to wait
    for the acks of previous entries before acknowledging the whole sequence
    to the application. In practice, the reordering is increasing the latency
    experienced by the application.

@merlimat merlimat force-pushed the bk-fixed-ledger-thread branch from 580917c to 570faa1 Compare November 2, 2016 21:15
Copy link
Copy Markdown
Member

@sijie sijie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. +1

@asfgit asfgit closed this in 7673feb Nov 12, 2016
kishorekasi pushed a commit to kishorekasi/bookkeeper that referenced this pull request Jul 18, 2017
…/write requests for same ledger to a single thread

    patch did not apply cleanly but mergetool resolved conflicts automatically.
    Three of *ProcessorV3.java required minor changes for build to compile, all tests passed after that.
    reviewed by Charan.

    commit 7673feb
    Author: Matteo Merli <mmerli@apache.org>
    Date:   Fri Nov 11 18:35:13 2016 -0800

        BOOKKEEPER-961: Assign read/write requests for same ledger to a single thread

        When entries for the same ledger are processed by the bookie we should avoid
        the reordering of the request. Currently, if multiple read/write threads are
        configured, the requests will be passed to the executor and writes for same
        ledger will be spread across multiple threads.

        This poses 2 issues:
         1. Mutex contention to access the LedgerDescriptor
         2. If the client receives add-entry acks out of order it has anyway to wait
            for the acks of previous entries before acknowledging the whole sequence
            to the application. In practice, the reordering is increasing the latency
            experienced by the application.

         Author: Matteo Merli <mmerli@yahoo-inc.com>

         Reviewers: Sijie Guo <sijie@apache.org>

         Closes apache#69 from merlimat/bk-fixed-ledger-thread
sijie added a commit to sijie/bookkeeper that referenced this pull request Jan 26, 2018
merge code change on remove unused methods in BKLogHandler.

Author: Sijie Guo <sijie@apache.org>
Author: Sijie Guo <sijieg@twitter.com>
Author: Leigh Stewart <lstewart@twitter.com>
Author: Jordan Bull <jbull@twitter.com>
Author: Dave Rusek <dave.rusek@gmail.com>
Author: Dave Rusek <drusek@twitter.com>

Reviewers: Leigh Stewart <lstewart@apache.org>

Closes apache#69 from sijie/merge/DL-97
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants