Skip to content

Update release-packages.yml#19

Merged
rbuergi merged 1 commit into
mainfrom
rbuergi-patch-3
Oct 7, 2024
Merged

Update release-packages.yml#19
rbuergi merged 1 commit into
mainfrom
rbuergi-patch-3

Conversation

@rbuergi
Copy link
Copy Markdown
Contributor

@rbuergi rbuergi commented Oct 7, 2024

No description provided.

@rbuergi rbuergi merged commit 82419fc into main Oct 7, 2024
@rbuergi rbuergi deleted the rbuergi-patch-3 branch October 7, 2024 19:10
rbuergi added a commit that referenced this pull request May 10, 2026
… file lock

The MESHWEAVER_DISPOSE_TRACE=1 trace took a global lock per call
(`File.AppendAllText` under `lock (DisposeTraceLogLock)`), serialising
hub teardown under load when many hubs disposed concurrently.

Replaced with a single bounded `Channel<string>` (capacity 4096,
FullMode = DropWrite) drained by one writer task started in the
type initialiser. Producers `TryWrite` non-blocking — if the disk is
slow / locked, lines drop on full instead of putting back-pressure
on dispose. Single-reader semantics avoid contention on the file
handle.

Addresses PR #95 review item #19.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
rbuergi added a commit that referenced this pull request May 16, 2026
Mesh-hub HandleCreateNodeRequest / HandleUpdateNodeRequest writes to
persistence directly (bypassing this hub's workspace) and fires
DataChangeNotification.Updated with the saved entity. Without re-syncing
the per-node hub's workspace, a fresh subscriber after delete + recreate
gets the stale pre-write MeshNode — caught by
WorkspaceCacheEvictionTest.AfterRecreate (test was failing for the
better part of a session).

Extends SubscribeToOwnDeletion's IDataChangeNotifier subscription:
- Deleted on ownPath: cache.IsDeleted = true (existing behavior)
- Created/Updated on ownPath: cache.IsDeleted = false; push the new
  entity through workspace.GetMeshNodeStream().Update() so the
  InstanceCollection refreshes; subsequent SubscribeRequests serve
  the live state.

Tests (all green): WorkspaceCacheEvictionTest 2/2, DeleteNodeBehaviorTest
10/10, CreateOrUpdateNodeRequestTest 3/3.

Closes task #19.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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