This is an automated email from the ASF dual-hosted git repository.

sijie pushed a commit to branch branch-4.9
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/branch-4.9 by this push:
     new ab15045  Avoid useless verify if LedgerEntryRequest completed
ab15045 is described below

commit ab15045bf98f5bc0cf6aba1019f6607c5ce17ea1
Author: Dongfa,Huang <[email protected]>
AuthorDate: Tue Apr 9 16:16:44 2019 +0800

    Avoid useless verify if LedgerEntryRequest completed
    
    Avoid useless verify if LedgerEntryRequest completed
    
    Change-Id: Ifda2a6e218c49105a5627be69566ea2ce4a57699
    
    Descriptions of the changes in this PR:
    Print misleading logs when the SpeculativeRequestExecutionPolicy is turned 
on:
    2019-04-03 18:30:49,839 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: -1 , actual: 602
    2019-04-03 18:30:49,839 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: -1 , actual: 606
    2019-04-03 18:30:49,839 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: -1 , actual: 610
    2019-04-03 18:30:49,839 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: -1 , actual: 614
    2019-04-03 18:30:49,843 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 644 , actual: 622
    2019-04-03 18:30:49,843 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 640 , actual: 626
    2019-04-03 18:30:49,843 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 656 , actual: 630
    2019-04-03 18:30:49,843 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 652 , actual: 634
    2019-04-03 18:30:49,843 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 648 , actual: 638
    2019-04-03 18:30:49,846 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 660 , actual: 642
    2019-04-03 18:30:49,846 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 675 , actual: 646
    2019-04-03 18:30:49,846 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 671 , actual: 650
    2019-04-03 18:30:49,846 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 667 , actual: 654
    2019-04-03 18:30:49,846 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 663 , actual: 658
    2019-04-03 18:30:49,848 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: -1 , actual: 670
    2019-04-03 18:30:49,849 ERROR org.apache.bookkeeper.client.DigestManager: 
Entry-id mismatch in authenticated message, expected: 692 , actual: 662
    
    
    
    ### Motivation
    Avoid useless verify and redundant logging(caused by the use of recycled 
`entryImpl`) if LedgerEntryRequest completed
    
    ### Changes
    Return immediately if completed
    
    Master Issue: #<master-issue-number>
    
    
    
    
    Reviewers: Sijie Guo <[email protected]>
    
    This closes #2061 from huangdongfa/master
---
 .../src/main/java/org/apache/bookkeeper/client/PendingReadOp.java      | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
index 65a3d76..22c0fc1 100644
--- 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
+++ 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
@@ -131,6 +131,9 @@ class PendingReadOp implements ReadEntryCallback, 
SafeRunnable {
          */
         boolean complete(int bookieIndex, BookieSocketAddress host, final 
ByteBuf buffer) {
             ByteBuf content;
+            if (isComplete()) {
+                return false;
+            }
             try {
                 content = lh.macManager.verifyDigestAndReturnData(eId, buffer);
             } catch (BKDigestMatchException e) {

Reply via email to