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
{{ message }}
This repository has been archived by the owner on Mar 22, 2023. It is now read-only.
as for "prereqs" - you can use pmemstream_with_multi_empty_regions which generates multiple regions; MT sync/async appends can be done in a body of a test (that probably needs some new tests' helpers).
Still, you need to make sure that the region_runtimes map in helpers is prepopulated in a concurrent test (or always pass NULL as region_runtime).
Also, are you suggesting that the generator should also perform multithreaded appends? I don't think this is a good idea - concurrent/multithreaded appends should be explicitly stated in the test as @lukaszstolarczuk suggested. The only job of a generator is to provide an initial, correct state (and appending concurrently might not result in a consistent state, this is what we want to test).
Also, please make sure that the code which iterates over all entries in the stream (all regions) and checks that timestamps monotonically increase is added as a helper to stream_helpers. We could even call this code every time in the destructor of stream helper (as we always expect stream to end up in consistent state).
FEAT: timestamp order with multiple threads and multiple regions tests
Description
Prerequisites:
(Prereq 1) Add generator derivated by pmemstream_test_base for that case:
(Prereq 2) Add generator derivated by pmemstream_test_base for that case:
Cases for (prereq 1 and 2):
Case 1:
In every region, all timestamps increase.
Case 2:
In stream, all timestamps increase (duplications).
Case 3:
Add regions, remove single region with entries, add an empty region and then add new entries then check Case 2.
Implementation details
N/A
The text was updated successfully, but these errors were encountered: