atproto relay in zig zlay.waow.tech
relay zig atproto
Something went wrong. Try again.
fix gcLoop: silently exited after one tick master
gcLoop was using io.sleep on pool_io (Threaded) from a plain std.Thread. the first tick happened to succeed, the second hit an error path, and catch return swallowed it — silently killing the loop. one malloc_trim fired at the 10-min mark and then nothing for 13.5+ hours. fix: switch to std.c.nanosleep directly. plain threads can't safely call into Io scheduler primitives, even on the matching backend, because they aren't registered with that backend's scheduler. drop the io parameter from gcLoop since dp.gc() uses its own bound io internally. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Author zzstoatzz Co-author Claude Opus 4.6 (1M context) Date (Apr 6, 2026, 8:41 PM UTC) Commit 3dc21b93 3dc21b93a0b52136cfc58c4f6b0d52b38ff56617 Parent e5f415fc e5f415fc72f25eb276072859e5670f17c2c8eb55