I have a critical issue with Views where it will randomly stop functioning and will throw an error into watchdog.

The site has a number of views, all pretty much identical to this:

  $view = new stdClass();
  $view->name = 'iso2001ara';
  $view->description = 'ISO2001 Content';
  $view->access = array (
  0 => '2',
  1 => '7',
);
  $view->view_args_php = '';
  $view->page = TRUE;
  $view->page_title = '';
  $view->page_header = '';
  $view->page_header_format = '3';
  $view->page_footer = '';
  $view->page_footer_format = '3';
  $view->page_empty = '';
  $view->page_empty_format = '3';
  $view->page_type = 'table';
  $view->url = '';
  $view->use_pager = FALSE;
  $view->nodes_per_page = '0';
  $view->sort = array (
  );
  $view->argument = array (
  );
  $view->field = array (
    array (
      'tablename' => 'node',
      'field' => 'title',
      'label' => 'Document Name',
      'handler' => 'views_handler_field_nodelink',
      'options' => 'link',
    ),
    array (
      'tablename' => 'node_data_field_document_reference',
      'field' => 'field_document_reference_value',
      'label' => 'Doc. Reference',
      'handler' => 'content_views_field_handler_ungroup',
      'sortable' => '1',
      'defaultsort' => 'ASC',
      'options' => 'plain',
    ),
  );
  $view->filter = array (
    array (
      'tablename' => 'term_node_113',
      'field' => 'tid',
      'operator' => 'OR',
      'options' => '',
      'value' => array (
  0 => '3189',
),
    ),
  );
  $view->exposed_filter = array (
  );
  $view->requires = array(node, node_data_field_document_reference, term_node_113);
  $views[$view->name] = $view;

The site and view will function for a few hours until the view will suddenly return no results and the following error will appear in the log:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IN ('3189')) ORDER BY node_data_field_document_reference_field_document_refer' at line 1 query: SELECT DISTINCT(node.nid), node.title AS node_title, node.changed AS node_changed, node_data_field_document_reference.field_document_reference_value AS node_data_field_document_reference_field_document_reference_value FROM node node LEFT JOIN content_type_qdos_article node_data_field_document_reference ON node.vid = node_data_field_document_reference.vid WHERE (.tid IN ('3189')) ORDER BY node_data_field_document_reference_field_document_reference_value ASC in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\includes\database.mysql.inc on line 172.

Clearing the views cache will allow the view to function again, but it will fail again within a few hours.

The site is running PHP5, MySQL5 and Apache 2.2.

Any ideas?

Comments

dinis’s picture

Hmm, it might be related to the the issues with TAC posted here...

http://drupal.org/node/272289

Investigating.

sun’s picture

Status: Active » Postponed (maintainer needs more info)
dinis’s picture

Testing the patch in http://drupal.org/node/272289, will update when I get accurate feedback or results.

dinis’s picture

36 hours and no repeat of the issue since patching, so far so good.

This is by far the longest the views cache has remained uncorrupted; I'll wait until COP tomorrow and if the issue has not re-occured I'm happy to call this as resolved.

dinis’s picture

Status: Postponed (maintainer needs more info) » Fixed

Changing status to 'fixed', the patch posted in the following thread resolved the issue:

http://drupal.org/node/272289

Cheers,
Danielle

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.