Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some public posts from followed remote users missing #2613

Closed
2 tasks done
wolfteeth opened this issue Apr 29, 2017 · 12 comments
Closed
2 tasks done

Some public posts from followed remote users missing #2613

wolfteeth opened this issue Apr 29, 2017 · 12 comments
Labels
bug Something isn't working

Comments

@wolfteeth
Copy link

I just noticed this tonight while bouncing back and forth between two instances (mastodon.social and my self-run instance).

From my instance, a few public toots from people I follow over on mastodon.social were missing on my local instance, both in my home timeline and in their local (federated) profile. Other public toots from the same users as well as others (on mastodon.social and elsewhere) federated fine and appeared in my home timeline.

I don't know enough about Sidekiq to figure out if these are jobs that died or what I can/should change to revive them.


  • I searched or browsed the repo’s other issues to ensure this is not a duplicate.
  • This bug happens on a tagged release and not on master (If you're a user, don't worry about this).
@mjankowski
Copy link
Contributor

Are the missing statuses from a time before you were following them?

If not, are they all in one big block of time, or are they spread out?

@jbbdude
Copy link

jbbdude commented Apr 29, 2017

I'm seeing the same. To answer those questions, no (plus others on the instance were) and... mostly bunched together or since a certain time, but there are a few exceptions mostly based on boosts or @ mentions.

The problem seems particularly aggravated in the last 12-18 hours.

@Lana-chan
Copy link

had this happen to me yesterday, there was a ~30 minute window in which all posts from someone i follow just did not come to our instance. after a while they started showing up again, but only the posts after that window are now in our instance. posts from other people in the same instance still came through. the posts were all public.

@wolfteeth
Copy link
Author

I have been following the person in question since I started my instance, about two weeks. I just checked out their profiles both federated and remote, and it looks like I lost about four of their public toots made in the last couple days. Two of their toots did come through yesterday, but I'm missing some before and some after.

I'm a little worried that we're losing posts for other people now that I noticed this. As a small instance we're pretty dependent on federation.

@wolfteeth
Copy link
Author

wolfteeth commented Apr 29, 2017

Okay, even weirder: their public toots still only come through sometimes - on ANY instance I remote-follow them from. The same toots are missing on all instances. If it makes a difference, many of this person's public toots are unlisted.

@BrunoSpy
Copy link

I have the same issue, and I think it's a really big issue.
Just compare toots visible from mastodon.social :
https://mastodon.social/web/accounts/60680
and the toots posted :
https://metal.odon.space/@BrunoSpy
It's important to take into account that all the missing toots are well received with my quitter.se account : that would mean the issue do not come from the outgoing instance (metal.odon.space in this case) but from the receiving instance (mastodon.social in this example).
I do not know if it's an issue exclusive to mastodon.social.

It seems that only the toots that have received a answer and have been boosted are showing up in mastodon.social, which is really strange.

@AshKyd
Copy link

AshKyd commented May 1, 2017

I've noticed the same thing. My system ran out of RAM and failed to process a number of jobs, but it doesn't seem to have bounced back after I fixed it.

I've also got a distinct downward trend in my sidekiq jobs which I don't know enough about to comment on. @wolfteeth are you seeing a similar trend?

@wolfteeth
Copy link
Author

@AshKyd - I am not seeing that currently.

However, I did see it in the past with a different problem. Double-check that your maintenance task cron jobs have been running. It's possible that the rake task to renew subscriptions has not been running, and the follows expired. In my case it was because I had made a typo in my cron script.

@wolfteeth
Copy link
Author

It looks like I spoke too soon on the sidekiq comment. My cron jobs have been running but the last couple days a bunch of people vanished from my instance's timeline, and are definitely posting on mastodon.social. Is there any way to debug this? Or force the sidekiq jobs to retry?

@wolfteeth
Copy link
Author

Update: On my break earlier today I ran my maintenance task script manually and my feed revived. The maintenance script has been running daily (it spits some output to a log file), but running it manually seemed to resubscribe me. Didn't help with the toots that had been lost though.

I'm starting to think the PuSH subscriptions aren't kept alive by the maintenance tasks, but instead are resubscribed if they are expired. Which could happen hours later, during which remote toots from those subscriptions are lost. If this is true it seems like a huge defect.

@wolfteeth
Copy link
Author

Ramped up the frequency of the PuSH refreshes and I'm still losing some followed mastodon.social users' public toots. So that's not it.

Some of my remote instance's public toots aren't getting to followers on mastodon.social either.

Gargron added a commit that referenced this issue May 4, 2017
…ad of cron

Fix an issue where / in domain would raise exception in TagManager#normalize_domain

PuSH subscriptions refresh done in a round-robin way to avoid hammering a single
server's hub in sequence. Correct handling of failures/retries through Sidekiq (see
also #2613). Optimize Account#with_followers scope. Also, since subscriptions
are now delegated to Sidekiq jobs, an uncaught exception will not stop the entire
refreshing operation halfway through

Fix #2702 - Correct user agent header on outgoing http requests
Gargron added a commit that referenced this issue May 5, 2017
* Fix #2473 - Use sidekiq scheduler to refresh PuSH subscriptions instead of cron

Fix an issue where / in domain would raise exception in TagManager#normalize_domain

PuSH subscriptions refresh done in a round-robin way to avoid hammering a single
server's hub in sequence. Correct handling of failures/retries through Sidekiq (see
also #2613). Optimize Account#with_followers scope. Also, since subscriptions
are now delegated to Sidekiq jobs, an uncaught exception will not stop the entire
refreshing operation halfway through

Fix #2702 - Correct user agent header on outgoing http requests

* Add test for SubscribeService

* Extract #expiring_accounts into method

* Make mastodon:push:refresh no-op

* Queues are now defined in sidekiq.yml

* Queues are now in sidekiq.yml
Gargron added a commit that referenced this issue May 5, 2017
* Fix #2473 - Use sidekiq scheduler to refresh PuSH subscriptions instead of cron

Fix an issue where / in domain would raise exception in TagManager#normalize_domain

PuSH subscriptions refresh done in a round-robin way to avoid hammering a single
server's hub in sequence. Correct handling of failures/retries through Sidekiq (see
also #2613). Optimize Account#with_followers scope. Also, since subscriptions
are now delegated to Sidekiq jobs, an uncaught exception will not stop the entire
refreshing operation halfway through

Fix #2702 - Correct user agent header on outgoing http requests

* Add test for SubscribeService

* Extract #expiring_accounts into method

* Make mastodon:push:refresh no-op

* Queues are now defined in sidekiq.yml

* Queues are now in sidekiq.yml
@wolfteeth
Copy link
Author

I hadn't noticed this again with v1.3.3, but I just saw this after inspecting during some downtime for a failed update. I noticed some earlier public toots from someone I follow on Mastodon.social were again missing. They didn't fall into the downtime (though in practice it looks like Mastodon catches up on toots that occurred during downtime).

@Gargron Gargron closed this as completed Apr 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

8 participants