Kunena 7.0.5 & Kunena 6.4.11 – Security Updates Released

The Kunena team has announce the arrival of Kunena 7.0.5 [K 7.0.5] in stable which is now available for download as a native Joomla extension for J! 5.4.x/6.0.x. This version addresses most of the issues that were discovered in K 6.2 / K 6.3 / K 6.4 and issues discovered during the last development stages of K 7.0.

The Kunena team is also pleased to announce the eleventh version of Kunena 6.4, a native Joomla extension for Joomla! 5.0, 5.1, 5.2, 5.3, 5.4 and 6.0.

Solved Plugin 'Smart Search - Kunena Forum' SQL error in Maintenance - Optimise

More
3 years 8 months ago - 3 years 8 months ago #225291 by carnalimr
I have the same issue, I disabled the Kunena Smart Search Plugin and was able to optimize. When it is enabled I get:
Code:
1064 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 ')' at line 5
Last edit: 3 years 8 months ago by carnalimr.

Please Log in or Create an account to join the conversation.

More
3 years 8 months ago - 3 years 8 months ago #225292 by toivo
I added the following lines instead:
Code:
$file = 'c:\www\joomla4test\administrator\logs\querylog.txt'; $logfile = fopen($file, 'a') or die('Unable to open file!'); fwrite($logfile, $query . "\r\n");

Here is the outcome:
Code:
SELECT @@SESSION.sql_mode; SELECT `data` FROM `#__session` WHERE `session_id` = ? SHOW FULL COLUMNS FROM `#__users` SELECT * FROM `#__users` WHERE `id` = :userid SELECT `g`.`id`,`g`.`title` FROM `#__usergroups` AS `g` INNER JOIN `#__user_usergroup_map` AS `m` ON `m`.`group_id` = `g`.`id` WHERE `m`.`user_id` = :muserid SELECT `session_id` FROM `#__session` WHERE `session_id` = :session_id LIMIT 1 UPDATE `#__session` SET `guest` = :guest     , `time` = :time     , `userid` = :user_id     , `username` = :username     , `client_id` = :client_id WHERE `session_id` = :session_id SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `#__extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1 SELECT `id`,`rules` FROM `#__viewlevels` SELECT `b`.`id` FROM `#__user_usergroup_map` AS `map` LEFT JOIN `#__usergroups` AS `a` ON `a`.`id` = `map`.`group_id` LEFT JOIN `#__usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `map`.`user_id` = :userId SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `#__extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4) ORDER BY `ordering` SELECT * FROM `#__kunena_configuration` WHERE `id` = 1 SELECT `id`,`name`,`rules`,`parent_id` FROM `#__assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41,:preparedArray42) SELECT `s`.`template`,`s`.`params`,`s`.`inheritable`,`s`.`parent` FROM `#__template_styles` AS `s` LEFT JOIN `#__extensions` AS `e` ON `e`.`type` = 'template' AND `e`.`element` = `s`.`template` AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 1 AND `s`.`home` = '1' ORDER BY `s`.`home` SELECT `name`,`element` FROM `#__extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1 SELECT l.*,`t`.`title` AS `t_title`,la.title AS language_title, la.image AS language_image FROM `#__finder_links` AS `l` INNER JOIN `#__finder_types` AS `t` ON `t`.`id` = `l`.`type_id` LEFT JOIN `#__languages` AS la ON la.lang_code = l.language ORDER BY l.title asc LIMIT 100 SELECT COUNT(*) FROM `#__finder_links` AS `l` INNER JOIN `#__finder_types` AS `t` ON `t`.`id` = `l`.`type_id` LEFT JOIN `#__languages` AS la ON la.lang_code = l.language SELECT name, enabled FROM `#__extensions` WHERE `type` = 'plugin' AND `folder` IN ('system','content') AND `element` = 'finder' SELECT * FROM #__wf_profiles WHERE published = 1 ORDER BY ordering ASC SELECT * FROM #__wf_profiles WHERE published = 1 ORDER BY ordering ASC SELECT `enabled` FROM `#__extensions` WHERE `type` = 'plugin' AND `folder` = 'system' AND `element` = 'languagefilter' SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM #__fields AS a LEFT JOIN `#__languages` AS l ON l.lang_code = a.language LEFT JOIN #__users AS uc ON uc.id=a.checked_out LEFT JOIN #__viewlevels AS ag ON ag.id = a.access LEFT JOIN #__users AS ua ON ua.id = a.created_user_id LEFT JOIN #__fields_groups AS g ON g.id = a.group_id WHERE  (`a`.`context` = :context AND `a`.`state` = :state) AND  (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC SELECT COUNT(link_id) FROM `#__finder_links` SELECT `id` AS `value`,`title` AS `text` FROM `#__finder_types` SELECT `a`.`title` AS `text`,`a`.`id` AS `value`,`a`.`parent_id`,`a`.`level` FROM `#__finder_taxonomy` AS `a` WHERE `a`.`parent_id` <> 0 ORDER BY a.title ASC SELECT `element`,`name`,`client_id`,`extension_id` FROM `#__extensions` WHERE `type` = 'language' AND `state` = 0 AND `enabled` = 1 SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `#__modules` AS `m` LEFT JOIN `#__modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `#__extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE  ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4)) AND  (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND  (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND  (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering` SELECT `language_extension`,`language_client_id`,`condition_file`,`condition_method` FROM `#__postinstall_messages` WHERE `enabled` = 1 SELECT * FROM `#__extensions` WHERE `element` = :element AND `type` = :type LIMIT 1 SELECT `a`.*,`u`.`name` AS `user_from` FROM `#__messages` AS `a` INNER JOIN `#__users` AS `u` ON `u`.`id` = `a`.`user_id_from` WHERE `a`.`user_id_to` = :id AND `a`.`state` = :state ORDER BY a.date_time DESC SELECT a.id, a.title, a.menutype, CASE COALESCE(SUM(m.home), 0) WHEN 0 THEN '' WHEN 1 THEN CASE m.language WHEN '*' THEN 'class:icon-home' ELSE CONCAT('image:', l.lang_code) END ELSE 'image:mod_languages/icon-16-language.png' END AS icon FROM #__menu_types AS a LEFT JOIN #__menu AS m ON m.menutype = a.menutype AND m.home = 1 LEFT JOIN #__languages AS l ON l.lang_code = m.language WHERE a.client_id = 0 GROUP BY a.id, a.title, a.menutype, m.language, l.lang_code ORDER BY a.id DESC SELECT title, menutype FROM #__menu_types WHERE client_id = 1 ORDER BY id DESC SELECT `m`.*,`e`.`element` FROM `#__menu` AS `m` LEFT JOIN `#__extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE  (`m`.`menutype` = :menutype AND `m`.`client_id` = 1 AND `m`.`id` > 1) AND  (`e`.`enabled` = 1 OR `e`.`enabled` IS NULL) ORDER BY `m`.`lft` SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`type`,`a`.`execution_rules`,`a`.`state`,`a`.`last_exit_code`,`a`.`locked`,`a`.`last_execution`,`a`.`next_execution`,`a`.`times_executed`,`a`.`times_failed`,`a`.`priority`,`a`.`ordering`,`a`.`note`,`a`.`checked_out`,`a`.`checked_out_time`,`uc`.`name` AS `editor` FROM `#__scheduler_tasks` AS `a` LEFT JOIN `#__users` AS `uc` ON `uc`.`id` = `a`.`checked_out` WHERE `a`.`state` = :state AND `a`.`next_execution` <= :now ORDER BY `a`.`title` asc SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`type`,`a`.`execution_rules`,`a`.`state`,`a`.`last_exit_code`,`a`.`locked`,`a`.`last_execution`,`a`.`next_execution`,`a`.`times_executed`,`a`.`times_failed`,`a`.`priority`,`a`.`ordering`,`a`.`note`,`a`.`checked_out`,`a`.`checked_out_time`,`uc`.`name` AS `editor` FROM `#__scheduler_tasks` AS `a` LEFT JOIN `#__users` AS `uc` ON `uc`.`id` = `a`.`checked_out` WHERE `a`.`state` = :state AND `a`.`locked` IS NOT NULL ORDER BY `a`.`title` asc SELECT @@SESSION.sql_mode; SELECT @@collation_database; SELECT @@collation_connection; SHOW SESSION STATUS WHERE `Variable_name` IN ('Ssl_version', 'Ssl_cipher') SHOW SESSION VARIABLES WHERE `Variable_name` IN ('have_ssl') SELECT * FROM `#__users` WHERE `id` = :userid SELECT `g`.`id`,`g`.`title` FROM `#__usergroups` AS `g` INNER JOIN `#__user_usergroup_map` AS `m` ON `m`.`group_id` = `g`.`id` WHERE `m`.`user_id` = :muserid SELECT `session_id` FROM `#__session` WHERE `session_id` = ? UPDATE `#__session` SET `data` = ?     , `time` = ? WHERE `session_id` = ? SELECT @@SESSION.sql_mode; SELECT `data` FROM `#__session` WHERE `session_id` = ? SHOW FULL COLUMNS FROM `#__users` SELECT * FROM `#__users` WHERE `id` = :userid SELECT `g`.`id`,`g`.`title` FROM `#__usergroups` AS `g` INNER JOIN `#__user_usergroup_map` AS `m` ON `m`.`group_id` = `g`.`id` WHERE `m`.`user_id` = :muserid SELECT `session_id` FROM `#__session` WHERE `session_id` = :session_id LIMIT 1 UPDATE `#__session` SET `guest` = :guest     , `time` = :time     , `userid` = :user_id     , `username` = :username     , `client_id` = :client_id WHERE `session_id` = :session_id SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `#__extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1 SELECT `id`,`rules` FROM `#__viewlevels` SELECT `b`.`id` FROM `#__user_usergroup_map` AS `map` LEFT JOIN `#__usergroups` AS `a` ON `a`.`id` = `map`.`group_id` LEFT JOIN `#__usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `map`.`user_id` = :userId SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `#__extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4) ORDER BY `ordering` SELECT * FROM `#__kunena_configuration` WHERE `id` = 1 SELECT `id`,`name`,`rules`,`parent_id` FROM `#__assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41,:preparedArray42) SELECT `s`.`template`,`s`.`params`,`s`.`inheritable`,`s`.`parent` FROM `#__template_styles` AS `s` LEFT JOIN `#__extensions` AS `e` ON `e`.`type` = 'template' AND `e`.`element` = `s`.`template` AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 1 AND `s`.`home` = '1' ORDER BY `s`.`home` SELECT `id` FROM `#__finder_types` WHERE `title` = 'Forum Post' SELECT `id` FROM `#__finder_types` WHERE `title` = 'Category' SELECT `id` FROM `#__finder_types` WHERE `title` = 'Contact' SELECT `id` FROM `#__finder_types` WHERE `title` = 'Article' SELECT `id` FROM `#__finder_types` WHERE `title` = 'News Feed' SELECT `id` FROM `#__finder_types` WHERE `title` = 'Tag' SELECT `id` FROM `#__finder_types` WHERE `title` = 'Forum Post' SHOW FULL COLUMNS FROM `#__kunena_messages` SELECT `l`.`link_id` FROM `#__finder_links` AS `l` WHERE `l`.`type_id` = 6 AND `l`.`url` LIKE 'index.php?option=com_kunena&view=topic&catid=&id=&mesid=' AND `l`.`url` NOT IN ( SELECT CONCAT('index.php?option=com_kunena&view=topic&catid=&id=&mesid=', id) FROM ) SELECT `element`,`name`,`client_id`,`extension_id` FROM `#__extensions` WHERE `type` = 'language' AND `state` = 0 AND `enabled` = 1 SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `#__modules` AS `m` LEFT JOIN `#__modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `#__extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE  ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4)) AND  (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND  (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND  (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering` SELECT `enabled` FROM `#__extensions` WHERE `type` = 'plugin' AND `folder` = 'system' AND `element` = 'languagefilter' SELECT `language_extension`,`language_client_id`,`condition_file`,`condition_method` FROM `#__postinstall_messages` WHERE `enabled` = 1 SELECT * FROM `#__extensions` WHERE `element` = :element AND `type` = :type LIMIT 1 SELECT `a`.*,`u`.`name` AS `user_from` FROM `#__messages` AS `a` INNER JOIN `#__users` AS `u` ON `u`.`id` = `a`.`user_id_from` WHERE `a`.`user_id_to` = :id AND `a`.`state` = :state ORDER BY a.date_time DESC SELECT a.id, a.title, a.menutype, CASE COALESCE(SUM(m.home), 0) WHEN 0 THEN '' WHEN 1 THEN CASE m.language WHEN '*' THEN 'class:icon-home' ELSE CONCAT('image:', l.lang_code) END ELSE 'image:mod_languages/icon-16-language.png' END AS icon FROM #__menu_types AS a LEFT JOIN #__menu AS m ON m.menutype = a.menutype AND m.home = 1 LEFT JOIN #__languages AS l ON l.lang_code = m.language WHERE a.client_id = 0 GROUP BY a.id, a.title, a.menutype, m.language, l.lang_code ORDER BY a.id DESC SELECT title, menutype FROM #__menu_types WHERE client_id = 1 ORDER BY id DESC SELECT `m`.*,`e`.`element` FROM `#__menu` AS `m` LEFT JOIN `#__extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE  (`m`.`menutype` = :menutype AND `m`.`client_id` = 1 AND `m`.`id` > 1) AND  (`e`.`enabled` = 1 OR `e`.`enabled` IS NULL) ORDER BY `m`.`lft` SELECT @@SESSION.sql_mode; SELECT @@collation_database; SELECT @@collation_connection; SHOW SESSION STATUS WHERE `Variable_name` IN ('Ssl_version', 'Ssl_cipher') SHOW SESSION VARIABLES WHERE `Variable_name` IN ('have_ssl') SELECT * FROM `#__users` WHERE `id` = :userid SELECT `g`.`id`,`g`.`title` FROM `#__usergroups` AS `g` INNER JOIN `#__user_usergroup_map` AS `m` ON `m`.`group_id` = `g`.`id` WHERE `m`.`user_id` = :muserid SELECT `session_id` FROM `#__session` WHERE `session_id` = ? UPDATE `#__session` SET `data` = ?     , `time` = ? WHERE `session_id` = ?
Last edit: 3 years 8 months ago by toivo.

Please Log in or Create an account to join the conversation.

More
3 years 8 months ago #225367 by toivo
This query must be the culprit but its location is a mystery at the moment:
Code:
SELECT `l`.`link_id` FROM `#__finder_links` AS `l` WHERE `l`.`type_id` = 6 AND `l`.`url` LIKE 'index.php?option=com_kunena&view=topic&catid=&id=&mesid=' AND `l`.`url` NOT IN ( SELECT CONCAT('index.php?option=com_kunena&view=topic&catid=&id=&mesid=', id) FROM )

Please Log in or Create an account to join the conversation.

More
3 years 8 months ago - 3 years 8 months ago #225368 by toivo
The SQL query is generated in Adapter::onFinderGarbageCollection() in administrator/components/com_finder/src/Indexer/Adapter.php.

The variable $this->table was not set:
Code:
 $subquery->select('CONCAT(' . $db->quote($this->getUrl('', $this->extension, $this->layout)) . ', id)')             ->from($db->quoteName($this->table));
Last edit: 3 years 8 months ago by toivo. Reason: code

Please Log in or Create an account to join the conversation.

Time to create page: 0.310 seconds