Page MenuHomePhabricator

Thousands of emails, without warning, flooding my server
Closed, WontfixPublic

Description

Hi.

I'm on the Wikimedia Phabricator, and today, one of my team members was running a script to migrate our Mingle instance into Phabricator. Great idea, and I'm glad we did it.

Tonight, I was on my VPS, which hosts several things including my email accounts. It was reporting "disk quota exceeded" errors on just about every attempt to create or edit a file.

I later discovered about three thousand files in my directory holding Phabricator emails. Understandable, given the volume of changes we'd been experiencing. I deleted them all. Things are working again.

We've hypothesized about configuring Phabricator to batch notifications in case of immense volume, and I think it's time to seriously consider that option, because this is clearly an issue.

Event Timeline

mtraceur raised the priority of this task from to Needs Triage.
mtraceur updated the task description. (Show Details)
mtraceur added a project: Phabricator.
mtraceur added a subscriber: mtraceur.

It's not clear what problem we're solving here. Custom scripts and their outcome aren't generally something we'd consider our responsibility (it also sounds like this was a dry run, maybe?). If you're importing large amounts of data that might send lots of email, in retrospect it might also be good to disable emails during the import (we do this for repository imports, so code paths exists likely).

If the request is to provide alternative notification options other than emailing for each action, that already exists in your email preferences. If your server is busy enough that email is too noisy, our expectation is you could turn certain notifications off, leave others on-site only, and/or utilize your email client's filtering to keep things as you need.

@chad this was a one-time import script, not a dry run, and not run by me. I had very little warning, and certainly no warning about the volume involved.

I have disabled all emails for my account on the instance now, but batching events after a configurable amount of volume seems like it may not be a bad idea, even independent of this particular use case. Scripts are not the only thing that can cause the volume involved - I have personally made changes to over 200 tasks at once, and that certainly caused a lot of noise. I'm sure even more noise could be created with very little effort, from *within* the application.

chad closed this task as Wontfix.EditedDec 9 2014, 5:46 AM
chad claimed this task.

We'd still consider this to be a user preference, and wouldn't build a server-wide configuration option around it. We have to say no to many 'just add a config' requests as it stands, the product would just become impossible to install and support if we had an option for everything people ask for. It would need to be useful to a number of installs to be considered.

https://secure.phabricator.com/book/phabcontrib/article/feature_requests/ covers a bit more about what we're looking for in feature requests if you're interested.