asterixdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chen Luo <>
Subject Question about LSM Disk Component LSN
Date Sat, 20 May 2017 05:29:34 GMT
Hi Devs,

Recently I was using LSN to set a component ID for every newly flushed disk
component. From LSMBTreeIOOperationCallback (as well as other index
callbacks), I saw that after every flush operation, the LSN was placed at
the newly flushed disk component metadata. I was expecting that the LSN
should be increasing for every newly flushed disk component. That is, if a
disk component d1 is flushed later than another disk component d2, we
should have d1.LSN>d2.LSN. (please correct me if I'm wrong)

However, based on my testing, this condition does not always hold. It is
possible that a later flushed disk component has a smaller LSN than the
previous flushed disk components (I found this by recording the previous
LSN, and throwing an exception when it is larger than the current LSN). Is
this behavior expected? Or we do not have the guarantee that LSNs placed at
flushed disk components are monotonic increasing?

Any help is appreciated.

Best regards,
Chen Luo

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message