pmem / pmemstream

Other
9 stars 13 forks source link

Entry iterator api refactor #198

Closed karczex closed 2 years ago

karczex commented 2 years ago

This change is Reviewable

karczex commented 2 years ago

tests/unittest/concurrent_iterate_with_append.cpp line 32 at r1 (raw file):

  /* Loop until all entries are found. */
  while (result.size() < data.size() + extra_data.size()) {
      if (pmemstream_entry_iterator_is_valid(eiter.get()) == 0) {

For some reason, iterator sometimes finds old entries when pmemstream_is_valid() is called concurrently with pmemstream_append()

codecov-commenter commented 2 years ago

Codecov Report

Merging #198 (f3d6c08) into master (e315b81) will decrease coverage by 0.60%. The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #198      +/-   ##
==========================================
- Coverage   91.48%   90.87%   -0.61%     
==========================================
  Files          12       12              
  Lines         834      855      +21     
==========================================
+ Hits          763      777      +14     
- Misses         71       78       +7     
Flag Coverage Δ
tests_clang_debug_cpp17 92.02% <100.00%> (-0.66%) :arrow_down:
tests_gcc_debug_cpp17 88.63% <97.43%> (+0.17%) :arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
src/iterator.c 97.27% <100.00%> (+0.72%) :arrow_up:
src/region.c 86.95% <100.00%> (-5.19%) :arrow_down:
src/span.c 94.73% <100.00%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more