Konstantin Obenland
Forum Replies Created
-
Forum: Plugins
In reply to: [ActivityPub] There has been a critical error on this website.Yes, that explains it: The WordPress version is outdated and doesn’t include these functions yet.
Updating WordPress to its latest version (and keeping it up to date!) should resolve these issues.
- This reply was modified 1 month ago by Konstantin Obenland.
Forum: Plugins
In reply to: [ActivityPub] There has been a critical error on this website.It looks like
rest_validate_enum()
is not loaded by the time that code executes. Is there more to the stack trace that you can share?Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testBy posting new posts! ??
activitypub_reprocess_outbox
is just a helper in case a processing event fails in unexpected ways.Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testThanks! I amended my list with the not-federated-before check.
should I mark it the same way we marked the 9000?
Yes, that’s an option, definitely. Another thing to consider would be to bring back the reprocessing job, to pick up these stray leftover posts.
wp cron event schedule activitypub_reprocess_outbox now hourly
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testYeah, same here, there’s a lot for us to build on.
Thank you so much for reporting this and your patience and understanding throughout—much appreciated!
These are some of the take aways to improve for the plugin, based on this experience:
- Process the first batch right away, instead of queuing a new event for it, to help cut down on events to process.
- Skip update events for comment and ping status changes, maybe others. Add a filter to extend that.
- Skip updated events for posts that have not been federated before.
- Find a way to check for a stampede. Maybe to check for bulk editing. @solarbird Did you bulk edit these posts through the wp-admin UI or some other way?
Anything else I’m missing?
- This reply was modified 1 month ago by Konstantin Obenland.
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testThose would be good candidates for
wp cron event schedule activitypub_process_outbox now --0=<post_id>
then, to get re-queued.Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testAre the events for it processed?
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testAll cleared up now?
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testNice!
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testThey should all be 100 item events that re-queue themselves with updated offset numbers as they go through your follower list
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testOn requeue, yes
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testhm, it looks like one of the inbox notifications maybe is what’s breaking it
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testYes, that could definitely be a side effect of that.
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testI’m hitting the ends of my wits, I’m afraid.
Could you run
wp cron event unschedule activitypub_reprocess_outbox
to make sure that’s not what’s rescheduling these events? (That event is a safety mechanism meant to catch unprocessed outbox items when the associated events died for any reason)Not sure if you’re interested in the inner workings of these batch events, but they’re designed to finish up when there no more inboxes to process and publish the Outbox item. For some reason that doesn’t seem to be happening? Is that right?
Forum: Plugins
In reply to: [ActivityPub] Accidental maximum stress testI had prepared this debug code in case you have access to your php-errors log, but I’m not sure we even need it. It does look like the batches are being processed, they are just being rescheduled again somehow?
function debug_outbox_process( $inboxes, $json, $actor_id, $outbox_item_id ) {
\error_log( 'Complete. Outbox item: ' . $outbox_item_id . '. Inboxes: ' . count( $inboxes ) );
}
add_action( 'activitypub_outbox_processing_complete', 'debug_outbox_process', 10, 4 );