We want migrate to Drupal. Old website has solid users DB (~120 000 registered members) and (may be it's important) ~20 000 Image nodes. Migration process is half-of-the-way.
Past days we've faced with some performance issues. In order to find a bottlneck, I've disabled modules *one by one*.
When I've tried to disable content_access, website closes browser connection. After that watchdog recorded many errors like this:
*
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 'INNER JOIN node_access na ON na.nid = node.nid WHERE (na.grant_view >= 1 AND ((n' at line 1 query: INNER JOIN node_access na ON na.nid = node.nid WHERE (na.grant_view >= 1 AND ((na.gid = 0 AND na.realm = 'all') OR (na.gid = 91172 AND na.realm = 'content_access_author') OR (na.gid = 2 AND na.realm = 'content_access_rid') OR (na.gid = 2 AND na.realm = 'workflow_access') OR (na.gid = 91172 AND na.realm = 'workflow_access_owner'))) LIMIT 0, 18 in /usr/home/public_html/includes/database.mysql.inc on line 172.
*
After F5 I've still see content_access module enabled checkbox.
With hosting support we've fulfill all (almost all) *MySQL-tuning* requirements.
So, the questions are:
1. How can I found the reason of this? May content_access module be the reason of server sloweness?
2. How can I *manually* (say *via direct MySQL DB queries *) disable content_access
3. Is content_access module issue tracker the right place to post my request?
Drupal 5.7
MySQL database 5.0.27
PHP 5.2.0
Apache/1.3.33 (Unix) PHP/5.2.0 mod_ssl/2.8.22 OpenSSL/0.9.7e
content_access 1.3
Thank you!
Comments
Comment #1
salvisI'm sorry to be the bearer of bad news, but with a site of your size you'll need to use Drupal 6, if you need node access control.
Your server either runs out of time (typically 4 minutes) or memory. This is a limitation of Drupal 5 core.
Comment #2
yurg commentedWell, after some googling around this issue, I decided to ask, may be another solution, rather than D6 migration, can be found? I've use a lot of modules not currently being ported, and *private* media (images and video) section.
So, since access to files can be regulated only via node_access module, which kills server performance on big users and nodes DB (~120K users and ~18K image nodes), is it generally possible to use Drupal5?
May be I need to make some tweaks in hardware (I have a dedicated box and can add memory or so)?
Comment #3
salvisIf you have a dedicated box, you can try raising the PHP timeout, which is typically set to 240 seconds. I think there's a memory limit, too, probably in php.ini. Use the Devel module to look at your phpInfo, I've found that I sometimes got confused about what I was looking at. The problem is that [Rebuild permissions] under D5 loads every node (not the images though), and you might run out of time or memory.
I know what the problem is, but I've never actually seen it happen on a site. You should probably get errors in the Apache log that give you more information.
Also, if you have multiple node access modules, then reducing their number would certainly help. You can download and install devel_node_access (and apply the patch in http://drupal.org/node/241060#comment-797217) to learn more about node access, then you may be able to find more efficient ways to organize your site.
I have no idea how CA compares, but maybe you could find other node access modules that do what you need in a more efficient way.
Please post back here what you find so that we can all learn from your situation.
Comment #4
good_man commented