Skip to content

Fixed database and improved resilience of CAPIO#144

Merged
marcoSanti merged 21 commits intocapio-v2from
reverted-lockguard
Jul 5, 2025
Merged

Fixed database and improved resilience of CAPIO#144
marcoSanti merged 21 commits intocapio-v2from
reverted-lockguard

Conversation

@marcoSanti
Copy link
Copy Markdown
Member

@marcoSanti marcoSanti commented Jul 3, 2025

This pull request significantly improves the resilience of CAPIO. in particular:

  • Reverted check around lock guard, as it was introducing bugs
  • Wrapped syscall handler invocations with try/catch blocks to print also in release mode the error should it arise
  • Wrapped FSMonitor class with try/catch blocks to ensure error print to be correct
  • Fixed an issue with the termination of capio: now if the signal handler is invoked by a child thread, it is skipped, so that only the main thread cleans the allocated data structures
  • Fixed a database on handshake: now the server-to-client and client-to-server she queues are allocated before sending a handshake to the server, ensuring that the server does not fail when issuing a stat on the shm allocated element. (it previously returned size 0 on the stat, thus failing on the mmap)
  • Added a single retry when getting the sim element size trough stat()

@marcoSanti marcoSanti force-pushed the reverted-lockguard branch from 678243d to 2118ebd Compare July 3, 2025 14:49
@codecov
Copy link
Copy Markdown

codecov bot commented Jul 4, 2025

Codecov Report

Attention: Patch coverage is 17.15976% with 140 lines in your changes missing coverage. Please review.

Project coverage is 47.49%. Comparing base (d1f45fc) to head (6661c98).
Report is 1 commits behind head on capio-v2.

Files with missing lines Patch % Lines
src/server/file-manager/fs_monitor.hpp 10.81% 12 Missing and 21 partials ⚠️
...c/server/client-manager/request_handler_engine.hpp 4.54% 4 Missing and 17 partials ⚠️
src/common/capio/shm.hpp 32.14% 8 Missing and 11 partials ⚠️
src/posix/libcapio_posix.cpp 5.26% 4 Missing and 14 partials ⚠️
src/server/communication-service/MTCL_backend.hpp 0.00% 6 Missing and 7 partials ⚠️
src/server/capio_server.cpp 25.00% 0 Missing and 9 partials ⚠️
src/posix/utils/cache.hpp 0.00% 0 Missing and 7 partials ⚠️
src/server/utils/signals.hpp 0.00% 1 Missing and 5 partials ⚠️
src/server/file-manager/file_manager_impl.hpp 44.44% 1 Missing and 4 partials ⚠️
src/common/capio/env.hpp 0.00% 0 Missing and 1 partial ⚠️
... and 8 more
Additional details and impacted files
@@             Coverage Diff              @@
##           capio-v2     #144      +/-   ##
============================================
- Coverage     48.79%   47.49%   -1.31%     
============================================
  Files            74       73       -1     
  Lines          3947     4009      +62     
  Branches       2270     2345      +75     
============================================
- Hits           1926     1904      -22     
+ Misses          980      936      -44     
- Partials       1041     1169     +128     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Marco Edoardo Santimaria added 2 commits July 4, 2025 11:07
@marcoSanti marcoSanti force-pushed the reverted-lockguard branch from 9753b7e to c4fe1d0 Compare July 4, 2025 09:47
@marcoSanti marcoSanti changed the title Reverted lockguard Fixed database and improved resilience of CAPIO Jul 5, 2025
@marcoSanti marcoSanti merged commit 69e49f2 into capio-v2 Jul 5, 2025
28 checks passed
@marcoSanti marcoSanti deleted the reverted-lockguard branch July 5, 2025 11:48
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.

1 participant