You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If the program loses power after the WAL deletion is completed, an error will occur during recovery, and we will be unable to restore the flushed memtable(which is not flush in record).
Therefore, in theory, we should reverse the order of these two.
However, I still have a concern regarding the reordering of code and instructions by the compiler and CPU. The write operation to the WAL (Write - Ahead Log) and the write operation to the manifest do not establish a happen - before relationship. In theory, their execution order can be swapped. If this happens, we may encounter the problem described in the above - mentioned code once again.
The text was updated successfully, but these errors were encountered:
Consider the following code(in min-lsm/src/lsm_storage line714-line725):
If the program loses power after the WAL deletion is completed, an error will occur during recovery, and we will be unable to restore the flushed memtable(which is not flush in record).
Therefore, in theory, we should reverse the order of these two.
However, I still have a concern regarding the reordering of code and instructions by the compiler and CPU. The write operation to the WAL (Write - Ahead Log) and the write operation to the manifest do not establish a happen - before relationship. In theory, their execution order can be swapped. If this happens, we may encounter the problem described in the above - mentioned code once again.
The text was updated successfully, but these errors were encountered: