After I updated ctools from version 7.x—1.10 to 7.x-1.12 the cache table gets flooded by entries of the cid pattern "view_panel_pane_[DOM-ID]". On each page request the DOM-ID of each Views panel pane changes. This can lead to very extensive memory consumption. One of my websites makes intensive use of Views panel panes on its Homepage and also on further Landing pages. Its mySQL-Database gets blown up by >= 30 GB within a few days. At the moment I’m working around this issue by executing cache_clear_all('*', 'cache', TRUE); once in a minute.

I’m experiencing this behaviour on two completeley separate drupal 7 websites. When I downgrade ctools back to 7.x—1.10, no entries of view_panel_pane_[DOM-ID] are written into the cache table.
Both websites don’t have extra cache settings inside the Panel panes themselves neither inside the corresponding Views.
It doesn’t matter whether Panels 7.x-3.7 or Panels 7.x-3.8 (released together with ctools on 16, Oct. 2016) is being run. This leads me to the conclusion that the behaviour was introduced by one of the latest ctools commits.

views_content_plugin_display_panel_pane.inc contains the following new function:

function set_pane_conf($conf = array(), $set_cache = TRUE) {
    $this->set_option('pane_conf', $conf);
    $this->view->dom_id = !empty($this->view->dom_id) ? $this->view->dom_id : md5($this->view->name . REQUEST_TIME . rand());
    if ($set_cache) {
      cache_set('view_panel_pane_' . $this->view->dom_id, $conf);
    }
    $this->has_pane_conf = TRUE;
  }

Comments

kreatIL created an issue. See original summary.

kreatIL’s picture

Status: Active » Closed (duplicate)
Related issues: +#2828620: Regression: View pane rendering misuses and floods cache

Sorry for double-posting, didn't find the other issue in the issue queue at first.