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

Handling incomplete logs and reject broken files #47

Merged
merged 10 commits into from
Nov 30, 2023

Conversation

ban-nobuhiro
Copy link
Contributor

WAL ファイルの取り扱いを頑強にする修正です

  • コミット中のサーバクラッシュ等で不完全な状態になっている WAL エントリを無効化し取り込まないようにする
  • pwal ファイルの log_entry が途中で切れている場合に検出しエラーとする
  • epoch ファイルに durable epoch 記録以外のレコードがあった場合にエラーとする

案件: https://github.com/project-tsurugi/tsurugi-issues/issues/461 (症状4)

Copy link

@ashigeru ashigeru left a comment

Choose a reason for hiding this comment

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

一か所だけ要検討で、他は問題なさそうです。

src/limestone/log_entry.h Outdated Show resolved Hide resolved
@t-horikawa
Copy link
Contributor

大したコメントはできませんが、一点。

case entry_type::this_id_is_not_used:

は、default:にfall throuthさせるなら不要かと(あっても動作に関する問題はありませんが)。

@ban-nobuhiro
Copy link
Contributor Author

default:にfall throuthさせるなら不要かと(あっても動作に関する問題はありませんが)。

コメントありがとうございます。その case を消しました。

Copy link

@ashigeru ashigeru left a comment

Choose a reason for hiding this comment

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

LGTM

@ban-nobuhiro
Copy link
Contributor Author

マージします

@ban-nobuhiro ban-nobuhiro merged commit 08bb447 into master Nov 30, 2023
6 checks passed
@ban-nobuhiro ban-nobuhiro deleted the handling-incomplete-logs branch February 7, 2024 08:28
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