Fatal error: Maximum execution time of 60 seconds exceeded in C:\WAMP\drupal\includes\file.inc on line 891

I have searched and read everything I can get my eyes on to try to figure this one out. The admin area, specifically admin/build/modules is incredibly slow. After reading various posts here, I've modified the php.ini file to allow greater execution times, configured the firewall, disabled the update status core module, tried it in multiple browsers, etc. Still there is little or no change to the slowness with my Drupal install when in admin. When logged out, and navigating the site locally as an anonymous user, everything loads super fast.

Here are the specifics to my install:
Drupal 6.7
WAMP:
-Apache 2.2.8
-PHP 5.2.6
-MySQL 5.0.51b
Win Vista Ultimate SP1
-3158 Mhz, 2 Core Processor
-4GB RAM
1TB HD in RAID Config'd for super speeds

I would think, at least as far as Win machines go, this install ought to smoke; but, its super slow in the Drupal admin areas.

Could anyone help me figure this one out please?

Comments

stephenwh’s picture

Have the same problem...very very slow...

shamuntoha’s picture

In my test, i use my lap, with vista, xampp, working fine.

Hardware:
512 ram: 431 mb used (running dreamweaver CS4, cli mode php, mysql)
CPU: 50% use (when page execute it ups and down)

Solution:
Run a benchmark script for some loop and class call to measure where is wrong..

My benchmark u can use the function:


// diff_microtime .... use this function to debug...
function diff_microtime($mt_old,$mt_new)
{
  list($old_usec, $old_sec) = explode(' ',$mt_old);
  list($new_usec, $new_sec) = explode(' ',$mt_new);
  $old_mt = ((float)$old_usec + (float)$old_sec);
  $new_mt = ((float)$new_usec + (float)$new_sec);
  //$old_mt =( (float)$new_usec - (float)$old_usec );
  return $new_mt - $old_mt;
}

 // loop same as oop
 function f_loop(){
 	for($i=0;$i<10000;$i++){ }
	return 55;
 }
 
 // OOP benchmark
 class one {
	 // simple variable
	 private $c_var=5;
	 
	 // simple return
	 public function c_function(){
		 return 6;
	 }
	 // loop class
	 public function c_loop(){
		 for($i=0;$i<10000;$i++){ }
		 return $this->$c_var;
	 }
	 // return variable
	 public function c_readvar(){
		 return $this->$c_var;
	 }
 } 
 
 // Result 1
 $a = microtime();
 $b = microtime();
 $result1 = number_format(diff_microtime($a,$b) ,6); 
 
 // Result 2
 $a = microtime();
 	$obj = new one();
 $b = microtime();
 $result2 = number_format(diff_microtime($a,$b) ,6);  
 
 // Result 3
 $a = microtime();
 	$obj = new one(); $obj->c_readvar;
 $b = microtime();
 $result3 = number_format(diff_microtime($a,$b) ,6);  

 // Result 4
 $a = microtime();
 	$obj = new one(); $obj->c_loop;
 $b = microtime();
 $result4 = number_format(diff_microtime($a,$b) ,6);  
 
 // Result 5
 $a = microtime();
 	f_loop();
 $b = microtime();
 $result5 = number_format(diff_microtime($a,$b) ,6);  
  
  
 // Result 5
 $var1 = array('1','2','3','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7'); 
 
 $a = microtime();
 	$var = $var1[30];
 $b = microtime();
 $result6 = number_format(diff_microtime($a,$b) ,6);  


 // Result 7
 $var1 = array('1','2','3'=>array('a','b','c','d','e'),'4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7'); 
 
 $a = microtime();
 	$var = $var1[3][3];
 $b = microtime();
 $result7 = number_format(diff_microtime($a,$b) ,6); 


 // Result 8
 $var1 = array('1','2','3'=>array('a','b','c','d','e'),'4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7');  
 $a = microtime();
 	foreach($var1 as $key=>$value){}
 $b = microtime();
 $result8 = number_format(diff_microtime($a,$b) ,6); 


 // Result 9
 $var1 = array('1','2','3'=>array('a','b','c','d','e'),'4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7');  
 $a = microtime();
 	for ($i=0; $i<count($var1); $i++) {}
 $b = microtime();
 $result9 = number_format(diff_microtime($a,$b) ,6); 


 // Result 10
 $var1 = array('1','2','3'=>array('a','b','c','d','e'),'4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7');  
 $a = microtime();
 	$len = count($var1);
 	for ($i=0; $i<$len; $i++) {}
 $b = microtime();
 $result10 = number_format(diff_microtime($a,$b) ,6); 



 // Result 11
 $var1 = array('1','2','3'=>array('a','b','c','d','e'),'4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7');  
 $a = microtime();
 	$len = count($var1); 	
	while($i<$len){
		$i++;
	}
 $b = microtime();
 $result11 = number_format(diff_microtime($a,$b) ,6); 
 
 // Result 12
 $var1 = array('1','2','3'=>array('a','b','c','d','e'),'4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7','4','5','6','7');  
 $a = microtime();
	while($i<count($var1)){		$i++; 	}
 $b = microtime();
 $result12 = number_format(diff_microtime($a,$b) ,6); 
 

 // Result 13
 $var1 = array();
 $var1[0] = "one"; $var1[1] = "one"; $var1[2] = "one"; $var1[3] = "one"; $var1[4] = array(1=>array('one','t','a'),2,3,4);
 
 $a = microtime();
	$var = $var1[4][0][0];
 $b = microtime();
 $result13 = number_format(diff_microtime($a,$b) ,6); 
 
 
 // Result 14
 $var1 = "helo";

 $a = microtime();
	if($var1=="helo"){}else{}
 $b = microtime();
 $result14 = number_format(diff_microtime($a,$b) ,6); 
 
 // Result 15
 $var1 = "helo";

 $a = microtime();
	switch(TRUE) { case 'helo': break; default: break; }
 $b = microtime();
 $result15 = number_format(diff_microtime($a,$b) ,6); 
 
 // Result 16
 $var1 = "helo";

 $a = microtime();
	isset($var1);
 $b = microtime();
 $result16 = number_format(diff_microtime($a,$b) ,6); 

 // Result 17
 $var1 = "helo";

 $a = microtime();
	empty($var1);
 $b = microtime();
 $result17 = number_format(diff_microtime($a,$b) ,6); 
 
 // Result 18
 $var1 = "helo";

 $a = microtime();
	is_array($var1);
 $b = microtime();
 $result18 = number_format(diff_microtime($a,$b) ,6);  
 


echo $_SERVER['SERVER_SOFTWARE'] benchmark (Object)



Testing Id. Description Total Time Etc.
1. obj = new class(); echo $result2; etc
2. obj = new class(); obj->c_readvar; echo $result3; etc
3. obj = new class(); obj->c_loop; echo $result4; etc

echo $_SERVER['SERVER_SOFTWARE'] benchmark (Function)



Testing Id. Description Total Time Etc.
1. function(function(a,b)); echo $result1; etc
2. f_loop_return(); echo $result5; etc

echo $_SERVER['SERVER_SOFTWARE'] benchmark (Array)



Testing Id. Description Total Time Etc.
1. var = array(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); var = var[30]; echo $result6; etc
2. var = array(,,array(,,,,,,,),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); var = var[3][3]; echo $result7; etc
3. $var = $var1[4][0][0]; echo $result13; etc

echo $_SERVER['SERVER_SOFTWARE'] benchmark (Loop)



Testing Id. Description Total Time Etc.
1. var = array(,,,,,,,,,,,,,); foreach(array as key and value) {} echo $result8; etc
2. var = array(,,array(,,,,,,,),,,,,,,,,,,,,,,); for(i; array length; i++) {} echo $result9; etc
3. var = array(,,array(,,,,,,,),,,,,,,,,,,,,,,); for(i; fix length; i++) {} echo $result10; etc
4. var = array(,,array(,,,,,,,),,,,,,,,,,,,,,,); $len = count($var1); while($i<$len){$i++} echo $result11; etc
5. var = array(,,array(,,,,,,,),,,,,,,,,,,,,,,); while($i < count($var1) ){$i++ } echo $result12; etc

echo $_SERVER['SERVER_SOFTWARE'] benchmark (Condition)



Testing Id. Description Total Time Etc.
1. if else echo $result14; etc
2. switch case echo $result15; etc
3. isset echo $result16; etc
4. empty echo $result17; etc
5. is_array echo $result18; etc


__________________________________________________________________________

php | c/c++ | java | vb.net | css | javascript | xml | xslt | xhtml | sql | cisco

stephenwh’s picture

ummm...we were talking about wamp - not xammp

anyway, for the original poster, xammp works much better, if you can - punt to that...makes sure you comment out this if you do decide to use xamp

::1 locahost

in your host file or it will run very slow...

yt2s’s picture

Thanks for responding with the xampp suggestion. I've looked into it at apachefriends.org (I'm assuming this is the best place) and don't see any note about conflicts. Do you know whether, wamp should be removed prior to installing xampp? Also, I'm very cautious about what I put on my machine because of the still unpredictable nature of the crap-os, oops sorry, I meant Vista Ultimate. I'd be curious to know if anyone here is running xampp on Vista Ultimate and what your experiences are. Lastly, stephewh, you mentioned commenting out a line to make sure xampp doesn't run slowly, and that got me to thinking: could it be just that simple with my wamp install as well? Is there some simple line that should be commented or uncommented in the wamp install?

pablokenfold’s picture

Yes, definitely uninstall WAMP if you're about to install xampp. I would even go as far as recommending you download a cleanup utility such as Revo uninstaller (freeware, no nags or ads, works like a charm) to eliminate registry entries.

After uninstalling wamp, reboot your computer before intalling xampp.

vitzo.com’s picture

Did you manage to find a solution? Some people report that the Base Filtering Service in Vista might have something to do with the problem.

shaunak’s picture

Set the "relpath_cache_size" to 2M. By default its set to ridiculously low levels.

Also make sure that you are using MyISAM tables.

hariabinash’s picture

Well guys .. I am still unable to figure it out why drupal is not working in Windows Vista Ultimate ( No SP1) + WAMP + Rectified PHP setup.ini file. I followed every possible combination to make it work but of no use probably I might missing something somewhere(As I am not a full time Techie).

But I am able to run drupal 6.10 in Windows Vista through Java Virtual Box (Quite light weight and easy to configure, best till yet i think ) with Win XP+WAMP installed.

Well I know this probably not the right solution but I kinda happy ( couldn't wait for a proper solution ) to run it within my Vista environment... :D Running in this virtual config is smooth and quite fast.

And make sure you increase the data handling capacity to more than 8 MB in PHP setup.ini for error free installation

Hope this solution might help some of you out there facing the similar situation like me. I am basically a web graphics designer currently in to drupal theming.

[ my sys config... Q6600, intel dg33tl, 4GB:800Mhz mem, 512mb:nvidia8600 gfx card, 580 gb hdd, win vista ultimate 32bit w/o sp1 ]

cheers

snorkers’s picture

I'd not used my Vista machine for D6 development, as it had always been slow, with frequent WSOD. So shifted to a Mac, which was effortless and very fast - esp for MySQL ops. However, forced back to Vista machine as Mac recently fried the video card :(.
I had a XAMPP installation and that was slow, so uninstalled and set up a WAMPSERVER - that just didn't like being reconfigured... so I went back to separate downloads of the latest versions of Apache, MySQL and PHP; then set all .ini files to have generous amounts of memory. But WSOD reigns - I'd just imported a 10MB MySQL dump and Vista just killed the install.
So for anyone else out there struggling with Vista... you're not alone.
I've never been one to take sides on the Mac vs PC (et al) argument, but now seriously tempted to install the JVM and Ubuntu on my Dell. Might have a fighting chance with Drupal then. Meanwhile, hope the Mac can be fixed.

juicytoo’s picture

Hi,

Try turning off firewall.

cheers
Ed

sethwilpan’s picture

Amazingly, this worked:

comment out the line ::1 localhost

More details here: http://blog.riff.org/2008_11_22_speeding_up_drupal_on_vista_with_wampserver

yt2s’s picture

Thanks for that find! It really does seem to make a difference. ...that is except for /admin/build/modules. It's still a toss up as to whether waiting on /modules to load on my Vista/WAMP or watching the lawn grow is faster.

  :-)