You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Flavio Junqueira (JIRA)" <ji...@apache.org> on 2010/08/04 23:27:17 UTC

[jira] Created: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

BookKeeper: Throttling improved for reads
-----------------------------------------

                 Key: ZOOKEEPER-831
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
             Project: Zookeeper
          Issue Type: Bug
          Components: contrib-bookkeeper
    Affects Versions: 3.3.1
            Reporter: Flavio Junqueira
            Assignee: Flavio Junqueira
             Fix For: 3.4.0


Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Ivan Kelly (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12907149#action_12907149 ] 

Ivan Kelly commented on ZOOKEEPER-831:
--------------------------------------

You've added a public method to the API purely for testing. Is this necessary? You can access the private members using reflection, which would save you having to add anything to the API which could be difficult to remove in the future.
 
@suppressWarning("unchecked")
int getAvailablePermits(LedgerHandle lh) {
    Field field = LedgerHandle.class.getDeclaredField("opCounterSem");
    field.setAccessible(true);
    return ((Semaphore)field.get(lh)).getAvailablePermits();
}


> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12910965#action_12910965 ] 

Hudson commented on ZOOKEEPER-831:
----------------------------------

Integrated in ZooKeeper-trunk #940 (See [https://hudson.apache.org/hudson/job/ZooKeeper-trunk/940/])
    ZOOKEEPER-831. BookKeeper: Throttling improved for reads


> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Ivan Kelly (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12909236#action_12909236 ] 

Ivan Kelly commented on ZOOKEEPER-831:
--------------------------------------

+1

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12895440#action_12895440 ] 

Hadoop QA commented on ZOOKEEPER-831:
-------------------------------------

+1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12451268/ZOOKEEPER-831.patch
  against trunk revision 980576.

    +1 @author.  The patch does not contain any @author tags.

    +1 tests included.  The patch appears to include 3 new or modified tests.

    +1 javadoc.  The javadoc tool did not generate any warning messages.

    +1 javac.  The applied patch does not increase the total number of javac compiler warnings.

    +1 findbugs.  The patch does not introduce any new Findbugs warnings.

    +1 release audit.  The applied patch does not increase the total number of release audit warnings.

    +1 core tests.  The patch passed core unit tests.

    +1 contrib tests.  The patch passed contrib unit tests.

Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h7.grid.sp2.yahoo.net/107/testReport/
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h7.grid.sp2.yahoo.net/107/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h7.grid.sp2.yahoo.net/107/console

This message is automatically generated.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Status: Patch Available  (was: Open)

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Attachment: ZOOKEEPER-831.patch

I have implemented the modification Ivan suggested to avoid a new call in the API of LedgerHandler.

The comment on the acquire call, however, is a little trickier. First, we can't acquire a permit in pendingAddOp.initiate() because the call to asyncAddEntry and the call to initiate are decoupled (a separate thread executes initiate). To have the acquire call being effective in throttling the client application, we need to put it either before or after submitOrdered in asyncAddEntry. Given that there is only one checked exception, which is thrown by the acquire call itself, it is my impression that it is ok to place the call before, and placing it before is the same order the we followed for read operations in pendingReadOp.initiate().

What do you think, Ivan?



> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Status: Patch Available  (was: Open)

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Status: Patch Available  (was: Open)

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Benjamin Reed (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Benjamin Reed updated ZOOKEEPER-831:
------------------------------------

        Status: Resolved  (was: Patch Available)
    Resolution: Fixed

Committed revision 998200.

thanx for the fix flavio and ivan for the reviews!

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Status: Open  (was: Patch Available)

Need to fix log messages.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Attachment: ZOOKEEPER-831.patch

Submitting new patch.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Attachment: ZOOKEEPER-831.patch

Attaching a new patch. In this patch, asyncAddOp catches a RunTimeException and releases a permit if there is such an exception while calling submitOrdered. It also releases a permit if metadata.isClosed() evaluates to true.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Ivan Kelly (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12908724#action_12908724 ] 

Ivan Kelly commented on ZOOKEEPER-831:
--------------------------------------

submitOrdered can throw RejectedExecutionException (Im guessing rare to the order of "if this happens the machine will die soon") or NullPointerException (unlikely). However there's no harm putting a try { } catch (Exception e) { opCounterSem.release(); } around it. the handler will never run except if the job is never submitted.

Also, you need a release inside the if (metadata.isClosed) . Otherwise I think it should be fine. As PendingAddOp should be able to handle it no matter what error occurs.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Ivan Kelly (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12907144#action_12907144 ] 

Ivan Kelly commented on ZOOKEEPER-831:
--------------------------------------

asyncAddEntry - why did you move the semaphore acquire in this? If an exception occurs during the adding of the operation, is the completion (and therefore the release) guaranteed?

Otherwise the patch looks good.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Attachment: ZOOKEEPER-831.patch

This patch fixes the issue described and modifies a test to verify that it is working.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-831) BookKeeper: Throttling improved for reads

Posted by "Flavio Junqueira (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Flavio Junqueira updated ZOOKEEPER-831:
---------------------------------------

    Status: Open  (was: Patch Available)

Canceling patch until comments are addressed.

> BookKeeper: Throttling improved for reads
> -----------------------------------------
>
>                 Key: ZOOKEEPER-831
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-831
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>    Affects Versions: 3.3.1
>            Reporter: Flavio Junqueira
>            Assignee: Flavio Junqueira
>             Fix For: 3.4.0
>
>         Attachments: ZOOKEEPER-831.patch, ZOOKEEPER-831.patch
>
>
> Reads and writes in BookKeeper are asymmetric: a write request writes one entry, whereas a read request may read multiple requests. The current implementation of throttling only counts the number of read requests instead of counting the number of entries being read. Consequently, a few read requests reading a large number of entries each will spawn a large number of read-entry requests. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.