Download & Extend

Doesn't work with distinct query on views 2.2

Project:Content Access
Version:6.x-1.0-beta1
Component:Code
Category:bug report
Priority:critical
Assigned:Unassigned
Status:closed (works as designed)
Issue tags:select distinct as distinct bug

Issue Summary

content_access 6.x-1.0-beta1 seems not working with views 2.2. When I specified a page view to be distinct, I got this query (after I installed the content_access too):

SELECT COUNT(*) FROM (SELECT DISTINCT(node.nid) AS DISTINCT(node.nid), node_data_field_photo.field_photo_fid AS node_data_field_photo_field_photo_fid, node_data_field_photo.field_photo_list AS node_data_field_photo_field_photo_list, node_data_field_photo.field_photo_data AS node_data_field_photo_field_photo_data, node_data_field_photo.nid AS node_data_field_photo_nid, node.type AS node_type, node.title AS node_title, node_data_field_position.field_position_value AS node_data_field_position_field_position_value, node_data_field_position.nid AS node_data_field_position_nid, node_revisions.teaser AS node_revisions_teaser, node_revisions.format AS node_revisions_format FROM node node LEFT JOIN content_field_photo node_data_field_photo ON node.vid = node_data_field_photo.vid LEFT JOIN content_type_testimonial node_data_field_position ON node.vid = node_data_field_position.vid LEFT JOIN node_revisions node_revisions ON node.vid = node_revisions.vid WHERE (node.status <> 0) AND (node.type in ('testimonial')) ORDER BY node_title ASC

The problem is here: DISTINCT(node.nid) AS DISTINCT(node.nid)
All my distinct views got this problem.

Comments

#1

Also experienced this problem. Everything works fine until I enable and rebuild the permissions for content access then i get the error;

    * user warning: 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 'DISTINCT(node.nid), node.created AS node_created FROM node node INNER JOIN' at line 1 query: SELECT COUNT(*) FROM (SELECT DISTINCT(node.nid) AS DISTINCT(node.nid), node.created AS node_created FROM node node INNER JOIN content_field_headline node_data_field_headline ON node.vid = node_data_field_headline.vid WHERE node_data_field_headline.field_headline_value = 'true' ORDER BY node_created DESC ) count_alias in /var/www/drupal/sites/all/modules/views/includes/view.inc on line 699.
    * user warning: 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 'DISTINCT(node.nid), node.created AS node_created FROM node node INNER JOIN' at line 1 query: SELECT DISTINCT(node.nid) AS DISTINCT(node.nid), node.created AS node_created FROM node node INNER JOIN content_field_headline node_data_field_headline ON node.vid = node_data_field_headline.vid WHERE node_data_field_headline.field_headline_value = 'true' ORDER BY node_created DESC LIMIT 0, 10 in /var/www/drupal/sites/all/modules/views/includes/view.inc on line 725.

My thanks to the previous poster for making the connection to distinct queries

#2

Status:active» closed (works as designed)

check the views issue queue - as this is an issue of views once any node access related module is turned on - there is nothing content access can do about that, as drupal is modifying the queries of views for us.
So I set this issue to "by design".

#3

This is Drupal's fault. I see this in IRC. Someone there give me this link http://drupal.org/node/284392

#4

nobody click here