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

Matteo Merli commented on BOOKKEEPER-879:
-----------------------------------------

I have a couple of concerns on the pull request: 

 # If we record "ctime", it might be useful to expose other informations that 
can be currently get from the z-node stats, like the last modification 
timestamp "mtime" and how many changes there were on the ledger metadata 
(z-node version)
 # When this feature is introduced, older ledger will not have the "ctime" 
field. What should I expect to get in that case? How would I know whether a 
ledger was created before or after the feature was rolled out? (This can also 
be at different times for different hosts) Can we fallback to z-node 
information if the field is not there?
 # We need to ensure that older clients are able to de-serialize the message 
metadata correctly (In the past I've seen errors with protocol buffer text 
format when new field are introduced)

Lastly, I don't think the ZK backup/restore is a very compelling reason to add 
this feature because: 
 # you cannot backup z-node one by one because that will lead to inconsistencies
 # to backup your ZK data, you simply need to copy the last ZK snapshot and 
transaction log
 # to restore from snaphot, you need to shutdown your ZK quorum, copy the 
snapshot and txn log to all participants and restart the quorum
 # after the restore, all z-nodes will have the correct ctime, mtime, etc. :) 

> Record ledger creation time
> ---------------------------
>
>                 Key: BOOKKEEPER-879
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-879
>             Project: Bookkeeper
>          Issue Type: New Feature
>          Components: bookkeeper-client, bookkeeper-server
>    Affects Versions: 4.3.1
>            Reporter: Enrico Olivelli
>
> I think that a creation timestamp would be very useful and it does not cost 
> very much. It would be an immutable value. 
> Nowadays (on 4.3.1) I must keep that info together with the id of the ledger, 
>  for instance in zookeeper,  but if that reference gets lost there is now way 
> to know how old a ledger is.
> I think that this timestamp should be captured on client while calling 
> createLedger or asyncCreateLedger.
> In addition to this very common field maybe it would be useful to add a 
> custom byte[] field named "custom client data" in order to let the client 
> 'describe' the ledger without the need of extra data on Zookeeper. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to