Mahadev konar updated ZOOKEEPER-380:

    Attachment: ZOOKEEPER-380.patch

THis patch implements a streaming api extending OutputStream and InputStream on 
top of ledgerhandles.

The way to use it is 
LedgerHandle lh = BooKKeeper.createLedger()
LedgerOutputStream los = new LedgerOutputStream(lh);
los.write() ...........

for using the inputstream is similar

LedgerHandle lh = BooKKepeer.openLedger()
LedgerInputStream lis = new LedgerInputStream(lh);

This patch does not have tests. I will add tests with the next patch. comments?

> bookkeeper should have a streaming api so that its easier to store 
> checpoints/snapshots in bookkeeper.
> ------------------------------------------------------------------------------------------------------
>                 Key: ZOOKEEPER-380
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-380
>             Project: Zookeeper
>          Issue Type: Improvement
>          Components: contrib-bookkeeper
>            Reporter: Mahadev konar
>         Attachments: ZOOKEEPER-380.patch, ZOOKEEPER-380.patch, 
> ZOOKEEPER-380.patch, ZOOKEEPER-380.patch
> currently, bookkeeper api allows just a bytes interface which is 
> ld.write(bytes).
> We should have an interface like 
> Stream s = ledger.createStream() (I am not very sure of the interface right 
> now but will post a more concrete one after giving it a little more thought)
> now this stream can be used to wirte checkpoints as 
> s.write(bytes)
> and then closed to s.close() to close the snapshot. 
> This api could use the current api to implement snapshots as chunks of bytes 
> (buffered by stream s) that can be written via ld.write(bytes).

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

Reply via email to