so, i think i have finally fixed a bug in #replicatr where it seemed like the queries were getting stuck with the receiver quitting before all the queries were sent
it turned out to be the "since" limit, the queries go in reverse chronological order, in the database iterations pass normally in ascending order, being when the records were added, and queries run in reverse order from newest to oldest... i think what was happening was that this was in some cases where the limit was not specified and neither was a since value, it holds open for 500 results to return even though it's actually already scanned the entire database for matches
can't tell at this point but where it used to be that stack traces i'd see [ chan send x minutes ] at the head of traces of threads, these aren't appearing anymore, and i definitely think there was some kind of latency being introduced in the returning of responses that particularly affected the notifications page on nostrudel
gotta monitor this but that bug was causing a fairly severe goroutine leak where after a while it just starts burning CPU for nothing over threads that are deadlocked due to a mismatch of senders and receivers due to queries being calculated as ongoing when they should have closed
seemed like a resource leak bug but it looks like it may have been a boundary condition bug