Skip to content

Remove DistributedSemaphores functionality#133

Merged
stidsborg merged 2 commits into
mainfrom
remove-distributed-semaphores
Apr 26, 2026
Merged

Remove DistributedSemaphores functionality#133
stidsborg merged 2 commits into
mainfrom
remove-distributed-semaphores

Conversation

@stidsborg
Copy link
Copy Markdown
Owner

Summary

  • Removes the DistributedSemaphores / DistributedSemaphore API and its Synchronization wrapper, along with ExistingSemaphores, SemaphoreStatus, and SemaphoreIdAndStatus
  • Drops ISemaphoreStore plus the in-memory, PostgreSQL, SQL Server, and MariaDB implementations (no more *_semaphores table on init/truncate)
  • Strips wiring from Workflow, Invoker, InvocationHelper, ControlPanel/ControlPanelFactory, IFunctionStore, and the CrashableFunctionStore test/sample wrappers; deletes the Subscription and BankTransfer/Locking samples that only existed to demo the lock API
  • AsyncSemaphore (the in-process parallelism limiter used by PostponedWatchdog) is unrelated and kept

Test plan

  • dotnet build Cleipnir.ResilientFunctions.sln — 0 warnings, 0 errors
  • dotnet test ./Core/Cleipnir.ResilientFunctions.Tests — 545/545 passing
  • Run store-specific test suites (PostgreSQL / SQL Server / MariaDB) against Docker Compose
  • Confirm existing deployments handle the leftover *_semaphores table (manual DROP TABLE if a clean schema is desired)

@stidsborg stidsborg merged commit 8f708c1 into main Apr 26, 2026
8 of 12 checks passed
@stidsborg stidsborg deleted the remove-distributed-semaphores branch April 26, 2026 08:51
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