1

Drupal 7 CiviCRM 4.6.28 Hosted on: Pantheon

I have a client that needs to import 15,000-20,000 contacts on CiviCRM. The problem we are running into is that importing any amount over 500 is causing a page timeout error to be thrown; our host, Pantheon, puts a strict 60-second limit on how long a page can take to load. We have been working on getting the resource usage down, which has improved the import, but the error is still being thrown.

The import does continue, and finish the job, after the error is thrown. We need the error to stop being thrown, though, so that the client can be confident that the import has completed.

The current idea we have to fix this is to skip over the import progress bar popup, keep them on the Summary page, and use Ajax to track the import and communicate when it is finished.

I'm fairly new to CiviCRM, so am wondering, does that solution sound doable? Or, does anyone have an idea for another solution to this problem?

1
  • I can't really speak to the specifics without much more detail that I'm sure you don't have time to sort nor do I to review right now, but I do think that if you were to try this on a server with pretty high resources and good configurations files you could get this done. After that, you could continue to host on that other system or move over to pantheon so from pantheon's side it is a standard import
    – ericG
    Commented Dec 28, 2017 at 5:02

2 Answers 2

4

That's a lot of contacts to import at once. Honestly, I try to keep it below 2,000 an import, especially if there is a lot of information. If you're only allowed a max of 60 seconds, it's likely there are other places where you will also run into errors regarding it timing out. Not only that, I've found that often times even when you think it did import everything, there was indeed information left out, errors with contacts, etc. Long term, your best solution will likely be a new host where you get more control over your resources. Looking at their site, it appears to be more of a shared hosting environment and I've found that I can rarely get a large CiviCRM site running well unless I'm either on a VPS with control over the resources or a dedicated server.

1
  • Even on a different server - and I agree completely about changing the hosting environment - I would still recommend limiting the number of contacts imported, as Jenni wisely advises you. Better to split the import up into smaller chunks and only have to run it once, than to spend/waste time trying to figure out what imported/didn't import when it times out IMHO. Commented Dec 28, 2017 at 20:59
0

If you can access httpd.conf file, add TimeOut value - it dramatically changed the number of records we were able to import - 5x and perhaps more per upload.

The value should be set under Server Root section we set as a temporary value to: TimeOut 1200

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.