Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance/fix FileBasedWAL #27

Merged
merged 2 commits into from
Oct 8, 2018
Merged

Enhance/fix FileBasedWAL #27

merged 2 commits into from
Oct 8, 2018

Conversation

sherman-the-tank
Copy link
Member

@sherman-the-tank sherman-the-tank commented Oct 4, 2018

  1. Support log rollback
  2. Separate buffer flusher logic, so that the number of flushers is independent from the number of WALs/Shards
  3. Improve the multiple threads support, but still not support multiple threads calling appendLogs()/rollbackToLog()
  4. Add UT for rollback
  5. Fix the flaky UTs

@nebula-community-bot
Copy link
Member

Build succeeded.

raftex/BufferFlusher.h Outdated Show resolved Hide resolved
raftex/BufferFlusher.cpp Outdated Show resolved Hide resolved
raftex/InMemoryLogBuffer.cpp Outdated Show resolved Hide resolved
raftex/InMemoryLogBuffer.h Outdated Show resolved Hide resolved
raftex/BufferFlusher.cpp Outdated Show resolved Hide resolved
raftex/BufferFlusher.cpp Outdated Show resolved Hide resolved
raftex/FileBasedWal.cpp Outdated Show resolved Hide resolved
raftex/FileBasedWal.cpp Outdated Show resolved Hide resolved
1) Support log rollback
2) Separate buffer flusher logic, so that the number of flushers is independent from the number of WALs/Shards
3) Inprove the multiple threads support, but still not support multiple threads calling appendLogs()/rollbackToLog()
4) Add UT for rollback
5) Fix the flaky UTs
@nebula-community-bot
Copy link
Member

Build succeeded.

@@ -13,7 +13,8 @@ namespace vgraph {
namespace raftex {

BufferFlusher::BufferFlusher()
: flushThread_(std::bind(&BufferFlusher::flushLoop, this)) {
: flushThread_("Buffer flusher",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This name is good, but for your reference, thread names in Linux consist of 15 characters at most.

@dutor
Copy link
Contributor

dutor commented Oct 8, 2018

I haven't got an in-depth understanding about the consensus and WAL implementation overall. I shall dig into the details later for myself.

Copy link
Contributor

@dutor dutor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

raj_thumbsup

@dutor dutor merged commit 3c1fcca into vesoft-inc:master Oct 8, 2018
@sherman-the-tank sherman-the-tank deleted the make_wal_support_rollback branch December 16, 2018 13:30
yixinglu pushed a commit to yixinglu/nebula that referenced this pull request Feb 16, 2020
* Enhance/fix FileBasedWAL

1) Support log rollback
2) Separate buffer flusher logic, so that the number of flushers is independent from the number of WALs/Shards
3) Improve the multiple threads support, but still not support multiple threads calling appendLogs()/rollbackToLog()
4) Add UT for rollback
5) Fix the flaky UTs

* Rebased and addressed dutor's comments
tong-hao pushed a commit to tong-hao/nebula that referenced this pull request Jun 1, 2021
* Enhance/fix FileBasedWAL

1) Support log rollback
2) Separate buffer flusher logic, so that the number of flushers is independent from the number of WALs/Shards
3) Improve the multiple threads support, but still not support multiple threads calling appendLogs()/rollbackToLog()
4) Add UT for rollback
5) Fix the flaky UTs

* Rebased and addressed dutor's comments
yixinglu pushed a commit to yixinglu/nebula that referenced this pull request Mar 21, 2022
Co-authored-by: jievince <38901892+jievince@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants