baidu / tera

An Internet-Scale Database.
BSD 3-Clause "New" or "Revised" License
1.89k stars 437 forks source link

通过Append接口放入多条数据,读出来时会有数据丢失 #1325

Closed yp963 closed 6 years ago

yp963 commented 6 years ago

我们在使用过程中,发生了数据丢失。发现是通过Append接口放入数据。读取数据时,LowLevelScan是分多次返回给sdk,每回返回的数据中的第一条都丢失了。

qq 20180530152029 如图中红圈中所示,因为是通过Append接口放入的数据所以在ScanMergedValue函数中会进行一次it->Next()的操作,如果此时scanBuf的大小已经大于了限定的大小,则在第983行又进行了一次it->Next()的操作,这样数据不会丢失吗?

datonli commented 6 years ago

@yp963 你好,这里确定是会造成数据丢失,我们会修复这个问题,非常感谢反馈!