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

Ivan Kelly commented on BOOKKEEPER-303:
---------------------------------------

For the C++ client, you need the protobuf library installed, as well as other 
dependencies, so requiring protoc isn't too much (I should install with library 
anyhow). But for java, protobuf comes as a mvn dependency. So, for C++, 
generating the files doesn't add extra overhead. For java it does.
                
> LedgerMetadata should serialized using protobufs
> ------------------------------------------------
>
>                 Key: BOOKKEEPER-303
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-303
>             Project: Bookkeeper
>          Issue Type: Bug
>            Reporter: Ivan Kelly
>            Assignee: Ivan Kelly
>             Fix For: 4.2.0
>
>         Attachments: BOOKKEEPER-303.diff, BOOKKEEPER-303.diff, 
> BOOKKEEPER-303.diff, BOOKKEEPER-303.diff
>
>
> Google protobufs is a library for serializing and deserializing data. It 
> elegantly handles the cases where new data is added to a data format. This is 
> useful in the case of something like LedgerMetadata, which may change over 
> time. However, at the moment, whenever we make a change to the LedgerMetadata 
> serialization format we have to break compatibility with old clients. By 
> using protobufs, even if we add something to the format, old clients should 
> be able to read the ledgers. 
> We should also change our protocols to use protobufs for the same reason, but 
> this should be done in 4.3.0.
> http://code.google.com/p/protobuf/

--
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