[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-50?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13143879#comment-13143879
 ] 

[email protected] commented on BOOKKEEPER-50:
---------------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/2642/#review3047
-----------------------------------------------------------



http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileInfo.java
<https://reviews.apache.org/r/2642/#comment6789>

    header> should be header&gt; There are a few more instances further down



http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileInfo.java
<https://reviews.apache.org/r/2642/#comment6791>

    Could you define this as a named constant such as final static int 
NO_MASTER_KEY = -1; and then explicitly check for the constant on read. 
    
     



http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileInfo.java
<https://reviews.apache.org/r/2642/#comment6790>

    The reason I suggested you call the other read method, readData is because 
it reads from the data section of the file, while this one reads from a 
absolute address. If you want to leave the public read as it is (i agree about 
the symmetry between read/write being nice), I would suggest changing this to 
readAbsolute()


- Ivan


On 2011-11-04 09:42:25, Sijie Guo wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/2642/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-11-04 09:42:25)
bq.  
bq.  
bq.  Review request for bookkeeper.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  save master key in header part of ledger index file.
bq.  
bq.  so we can load master key when opening an existed ledger index file to 
avoid that master key is null.
bq.  
bq.  
bq.  This addresses bug BOOKKEEPER-50.
bq.      http://issues.apache.org/jira/browse/BOOKKEEPER-50
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    
http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/Bookie.java
 1197114 
bq.    
http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileInfo.java
 1197114 
bq.    
http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java
 1197114 
bq.    
http://svn.apache.org/repos/asf/zookeeper/bookkeeper/trunk/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BookieReadAfterBookieRestartTest.java
 PRE-CREATION 
bq.  
bq.  Diff: https://reviews.apache.org/r/2642/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Sijie
bq.  
bq.


                
> NullPointException at LedgerDescriptor#cmpMasterKey
> ---------------------------------------------------
>
>                 Key: BOOKKEEPER-50
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-50
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-server
>    Affects Versions: 3.4.0
>            Reporter: xulei
>            Assignee: Sijie Guo
>             Fix For: 4.0.0
>
>         Attachments: BookieReadAfterBookieRestartTest.java, 
> bookkeeper-50.patch, bookkeeper-50.patch, bookkeeper-50.patch_v2
>
>
> the LedgerDescriptor will be created when it is missed in LedgerCache. 
> NullPointException will be thrown out in the following case:
> 1. The ledger descriptor is created and cached to LedgerCache because of a 
> readEntry operation in bookie. The ledger descriptor was created without 
> setting master key (we don't know master key in a read request)
> 2. An addEntry is sent after 1 . since the ledger descriptor has been cached, 
> so addEntry will use it to compare master key. then NullPointException is 
> thrown out.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to