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

Move positions file to being bbolt instead of raw file #5539

Closed
wants to merge 10 commits into from

Conversation

mattdurham
Copy link
Collaborator

@mattdurham mattdurham commented Oct 19, 2023

PR Description

Instead of using a raw file with xml which is prone to problems in the case of a hard reboot, switched to using bbolt. bbolt is the storage backend for etcd so is mature and has a team behind it. In testing it created a 32kb file, which looks to be the minimum file size even though its not storing very much text. This code also attempts to transition their old xml, assuming they are using the defaults.

Which issue(s) this PR fixes

Closes #4916

Notes to the Reviewer

This is a step to test out using a kv store for more usages beyond this singular usage.

PR Checklist

  • CHANGELOG.md updated
  • Tests updated

@rfratto
Copy link
Member

rfratto commented Oct 19, 2023

Is there a simpler way of fixing #4916? On first glance this feels like killing a fly with a machine gun :) Other projects use renames to make the writes act as atomic operations, avoiding the corruption in #4916.

There may be good reasons to start adopting a KV store, but it has its own set of tradeoffs and may be heavier than is needed to strictly fix #4916.

@rfratto
Copy link
Member

rfratto commented Oct 19, 2023

This is a trojan horse

You may want to avoid saying things like this :) This will alarm people; you're not writing malware here.

@mattdurham
Copy link
Collaborator Author

This is absolutely heavier than a rename, one of the primary goals is for me to get some operational knowledge and see how we can use a kv elsewhere. Made my trojan horse comment more clear.

@mattdurham mattdurham closed this Nov 14, 2023
@github-actions github-actions bot added the frozen-due-to-age Locked due to a period of inactivity. Please open new issues or PRs if more discussion is needed. label Feb 21, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 21, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
frozen-due-to-age Locked due to a period of inactivity. Please open new issues or PRs if more discussion is needed.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Agend Flow crash after client reboot
2 participants