Thank you Sijie. This is super useful. It would be good that you can put this in the FAQ page. I believe it is very useful for newbies like me.
- Jay On Sat, Sep 10, 2016 at 12:31 PM, Sijie Guo <[email protected]> wrote: > Hello Jay, > > There is an explanation in the API page - > http://distributedlog.io/api/core.html#sequence-numbers > > In short, the transaction id is an application supplied sequence number. It > is required to be non-decreasing. Users usually use either timestamp or > offset (bytes written so far) as the transaction id, so that they can use > transaction id to rewind either by time or offset. > > The sequence id is the system generated sequence number. It indicates that > global sequence of a log record in the stream. if you are familiar with > Raft > <https://raft.github.io/raft.pdf>, it is same as the log *index *in Raft. > There are two typical use cases of sequence id. You can use sequence id to > identify the number of records in between of any two records. You can use > sequence id to do any sanity check on the delivery sequence. > > Let me know if you have any questions. > > - Sijie > > > > On Thu, Sep 8, 2016 at 11:47 PM, Jay Juma <[email protected]> wrote: > > > Hello, > > > > I am newbie to distributed log. What is the major difference between the > > sequence id and transaction id of a log record? They seem to be both long > > numbers. > > > > Thanks, > > Jay > > >
