2

After upgrading to 1.13 should I wait until these scripts have run or can I put the site live while the script is running?

 php -f url_migration_to_1_13.php 
[INFO]: Initialization...
[INFO]: Renaming conflicting entities...
  80% [#########################################################################################################--------------------------] ETA 00:07:31    

The scripts take more than an hour to run and the client doesn't want to wait.

EDIT:

The Redirect scripts will take an additional 2 hours

[INFO]: Creating redirects from previous version...
  2% [###--------------------------------------------------------------------------------------------------------------------------------] ETA 02:10:54   
  • 1
    I think the safest choice is to wait. This way if something goes wrong you can fix it and restart it. Also there will be no other requests to the website to stress the DB. – Marius Oct 22 '13 at 14:51
  • Just Follow up : The script to do the redirects is still running and we are 4 hours into the upgrade – brentwpeterson Oct 22 '13 at 16:07
4

Realizing that by now they are likely done... I'll answer anyway. :)

Putting the site live before they finished running would not be a good idea, you'll end up with URLs that are not what they should be during the transition and possibly issues related to locking in the database as well. It's site maintenance that is unavoidable.

If I remember correctly from last time I ran these, at least one of them allows for using multiple threads to take advantage of multiple cores in the calculations, but I've not run them that way.

UPDATE: Now that I'm at a computer vs my iPhone…

The url_migration_to_1_13.php script does support using multiple threads. To take advantage of using multiple threads, pass in a thread count as the first argument like this:

php shell/url_migration_to_1_13.php 15

This is documented on the wiki page with upgrade instructions. As it notes and I will corroborate, the thread count shouldn't go higher than the number of CPU cores less one. So for optimum performance on a 16 core server, don't use more than 15 as a thread count value.

  • Out of curiosity, how is the EE script using "threads" in a PHP context -- or is that labeling and the script just execs a certain number of processes? – Alan Storm Oct 24 '13 at 15:45
  • 1
    @AlanStorm It is using the term "thread" to refer to the number of child processes it spawns. So not actual threading. – davidalger Oct 24 '13 at 15:51
  • To speed things up, I was wondering if it was safe to run this on multiple servers of a load balanced setup. – Jan Tomka Nov 10 '15 at 6:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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