Index: modules/node/node.module =================================================================== RCS file: /cvs/drupal/drupal/modules/node/node.module,v retrieving revision 1.1033 diff -u -p -r1.1033 node.module --- modules/node/node.module 26 Mar 2009 13:31:25 -0000 1.1033 +++ modules/node/node.module 4 Apr 2009 22:01:55 -0000 @@ -799,11 +799,8 @@ function node_invoke_node(&$node, $op, $ * @return * An array of node objects indexed by nid. */ -function node_load_multiple($nids = array(), $conditions = array(), $reset = FALSE) { - static $node_cache = array(); - if ($reset) { - $node_cache = array(); - } +function node_load_multiple($nids = array(), $conditions = array()) { + $node_cache = variable_get_temporary('node_load_multiple', array()); $nodes = array(); // Create a new variable which is either a prepared version of the $nids @@ -927,6 +924,7 @@ function node_load_multiple($nids = arra // Add nodes to the cache if we're not loading a revision. if (!$vid) { $node_cache += $queried_nodes; + variable_set_temporary('node_load_multiple', $node_cache); } } Index: modules/taxonomy/taxonomy.module =================================================================== RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.module,v retrieving revision 1.465 diff -u -p -r1.465 taxonomy.module --- modules/taxonomy/taxonomy.module 2 Apr 2009 20:39:45 -0000 1.465 +++ modules/taxonomy/taxonomy.module 4 Apr 2009 22:01:55 -0000 @@ -805,9 +805,9 @@ function taxonomy_get_children($tid, $vi * Results are statically cached. */ function taxonomy_get_tree($vid, $parent = 0, $max_depth = NULL, $depth = -1) { - $children = &drupal_static(__FUNCTION__, array()); - $parents = &drupal_static(__FUNCTION__ . 'parents', array()); - $terms = &drupal_static(__FUNCTION__ . 'terms', array()); + $children = variable_get_temporary('taxonomy_get_tree:children', array()); + $parents = variable_get_temporary('taxonomy_get_tree:parents', array()); + $terms = variable_get_temporary('taxonomy_get_tree:terms', array()); $depth++; @@ -824,6 +824,9 @@ function taxonomy_get_tree($vid, $parent $parents[$vid][$term->tid][] = $term->parent; $terms[$vid][$term->tid] = $term; } + variable_set_temporary('taxonomy_get_tree:children', $children); + variable_set_temporary('taxonomy_get_tree:parents', $parents); + variable_set_temporary('taxonomy_get_tree:terms', $terms); } $max_depth = (is_null($max_depth)) ? count($children[$vid]) : $max_depth;