现在好像网站消耗了越来越多的资源。在国庆节,总算有点时间来看看这个问题。
当前系统是运行drupal-4.7.7和spam-4.7.x-1.0.tar.gz,看到很多spam没有被真正删除,看到日志中有很多错误:
在/var/www/lvszh/includes/database.mysql.inc的第121行: Unknown column 'n.revision_timestamp' in 'where clause' query: SELECT n.nid, n.vid, n.type, n.status, n.created, n.changed, n.comment, n.promote, n.moderate, n.sticky, r.timestamp AS revision_timestamp, r.title, r.body, r.teaser, r.log, r.format, u.uid, u.name, u.picture, u.data FROM node n INNER JOIN users u ON u.uid = n.uid INNER JOIN node_revisions r ON r.vid = n.vid WHERE n.nid = '888' AND n.vid = '915' AND n.type = 'blog' AND n.status = '0' AND n.created = '1189520833' AND n.changed = '1189520833' AND n.comment = '2' AND n.promote = '0' AND n.moderate = '0' AND n.sticky = '0' AND n.revision_timestamp = '1189520833' AND n.title = 'zgcljtbkvr' AND n.body = 'zgcljtbkvr ' AND n.log = '' AND n.format = '1' AND n.uid = '1538' AND n.name = 'IRUWmOnEYVwZ' AND n.picture = '' AND n.data = 'a:0:{}' AND n.last_comment_timestamp = '1189520833' AND n.last_comment_name = '' AND n.comment_count = '0' AND n.taxonomy = 'Array' AND n.files = 'Array' AND n.confirm = '1' 。
Google了一下,找到类似的问题,看文章。要将spam.module文件中spam_delete_node($nid)作一些修改,把
node_delete((array)$node);
变成
node_delete($nid);
看到spam-4.7.x-1.x-dev.tar.gz开发版,已经作类似的修复,它还包含了其他一些修复,所以直接用开发版来解决这个问题。
