-
Notifications
You must be signed in to change notification settings - Fork 86
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
Make persistence incremental thread-safe for Network Reliability layer #1211
Merged
v0d1ch
merged 13 commits into
master
from
abailly-iohk/thread-safe-reliability-persistence
Dec 16, 2023
Merged
Make persistence incremental thread-safe for Network Reliability layer #1211
v0d1ch
merged 13 commits into
master
from
abailly-iohk/thread-safe-reliability-persistence
Dec 16, 2023
Commits on Dec 15, 2023
-
This small experiment demonstrates how to detect "race conditions" when some atomic result is expected, the idea is to use a TVar to simulate files operations and show the consequences of non-atomic writes and reads on messages resending.
Configuration menu - View commit details
-
Copy full SHA for 3724987 - Browse repository at this point
Copy the full SHA 3724987View commit details -
Introducing stress test for network persistence
This test is not very satisfying but for now I cannot come up with a better idea. It shows that with large messages (~10kB) there's exception thrown but the peers can get stuck, which is a different problem than the one observed in production.
Configuration menu - View commit details
-
Copy full SHA for 22571b2 - Browse repository at this point
Copy the full SHA 22571b2View commit details -
Unify terminology in log messages and use punning
We try to improve naming the log messages' fields, make it more consistent between different messages, and replace field accessor function and positional construction with proper field name punning.
Configuration menu - View commit details
-
Copy full SHA for 48d5595 - Browse repository at this point
Copy the full SHA 48d5595View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9e1d747 - Browse repository at this point
Copy the full SHA 9e1d747View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f842bb - Browse repository at this point
Copy the full SHA 1f842bbView commit details -
Store sent messages in a cache for resending purpose
We used to do that but then moved to always reloading from file, which lead to race conditions when reading/writing concurrently and incorrect deserialisation of messages. It seems both safer and faster to use a local cache, and only reload messages at start of the network layer.
Configuration menu - View commit details
-
Copy full SHA for 1d378aa - Browse repository at this point
Copy the full SHA 1d378aaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 32a290a - Browse repository at this point
Copy the full SHA 32a290aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 839e5c0 - Browse repository at this point
Copy the full SHA 839e5c0View commit details -
Configuration menu - View commit details
-
Copy full SHA for b357477 - Browse repository at this point
Copy the full SHA b357477View commit details -
Configuration menu - View commit details
-
Copy full SHA for e422c91 - Browse repository at this point
Copy the full SHA e422c91View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9daddbb - Browse repository at this point
Copy the full SHA 9daddbbView commit details -
Configuration menu - View commit details
-
Copy full SHA for eb60638 - Browse repository at this point
Copy the full SHA eb60638View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1b07b81 - Browse repository at this point
Copy the full SHA 1b07b81View commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.