I spent several hours tracing in production (updating the code a dozen times with extra logging) to identify the actual path the lemmy_server code uses for outbound federation of votes to subscribed servers.
Major popular servers, Beehaw, Leemy.world, Lemmy.ml - have a large number of instance servers subscribing to their communities to get copies of every post/comment. Comment votes/likes are the most common activity, and it is proposed that during the PERFORMANCE CRISIS that outbound vote/like sharing be turned off by these overwhelmed servers.
pull request for draft:
EDIT: LEMMY_SKIP_FEDERATE_VOTES environment variable
ool. I found the syntax for multiple hits, so I was looking for:
match activity { AnnouncableActivities::UndoVote(_) | AnnouncableActivities::Vote(_) => { warn!("zebratrace310 SKIP federating Vote/UndoVote"); }, _ => { warn!("zebratrace311 send"); AnnounceActivity::send(activity.clone().try_into()?, community, context).await?; }, }
Thank you.