Upgrade baze nije problem ako paziš na execution time i memory limit. Rebuild search indeksa npr može baš lepo da povuče resursa recimo i ako moraš to da kombinuješ sa još par dodatnih operacija, velika je verovatnoća da se na nekim serverima nećeš uklopiti u limite.
Mi smo problem rešili tako što smo sve korake razdvojili u zasebne rutine koji se asinhrono pozivaju (1. Upgrade postojećih table, 2. Rebuild search indexa, 3. Upgrade dozvola, 4. Something else... 198. Finish). Neka osnovna JavaScript logika se brine o tome da se koraci pozivaju jedan po jedan u odgovarajućem redosledu, ali je svaki korak zaseban request. Nema rollback za sada
Nismo imali pritužbe (u pitanju su stotine najrazličitijih servera). Najveći problem koji imamo sa upgrade alatom je što ljudi ZABORAVE da ga izvrše nakon što upgraduju same fajlove
Za dozvole - WordPress ima zgodan
auto-upgrade plugin, pa možeš overiti source i videti probleme sa dozvolama i fajlovima i kako ih je čovek rešio.