We are experiencing an issue with our OJS 33016 journal portal. Our database is located on an external database server, but when OJS performs the query shown at the end, the database server becomes overloaded, causing it to crash and, as a knock-on effect, causing the journal portal to crash. Is the query identified by the database server administrator normal? Please help us find a hypothesis so that we can arrive at a solution.
SELECT o . submission_id ,
MAX ( s . context_id ) AS journal_id ,
MAX ( i . date_published ) AS i_pub ,
MAX ( p . date_published ) AS s_pub ,
COUNT ( * ) AS count
FROM submissions s
JOIN publications p
ON ( p . publication_id = s . current_publication_id )
JOIN publication_settings ps
ON ( ps . publication_id = p . publication_id
AND ps . setting_name = ?
AND ps . locale = ? )
JOIN issues i
ON ( CAST ( i . issue_id AS CHAR ( ? ) ) = ps . setting_value
AND i . journal_id = s . context_id )
JOIN submission_search_objects o
ON ( s . submission_id = o . submission_id )
JOIN journals j
ON j . journal_id = s . context_id
LEFT JOIN journal_settings js
ON j . journal_id = js . journal_id
AND js . setting_name = ? NATURAL
JOIN submission_search_object_keywords o0 NATURAL
JOIN submission_search_keyword_list k0 ,
submission_search_object_keywords o1 NATURAL
JOIN submission_search_keyword_list k1 ,
submission_search_object_keywords o2 NATURAL
JOIN submission_search_keyword_list k2 ,
submission_search_object_keywords o3 NATURAL
JOIN submission_search_keyword_list k3 ,
submission_search_object_keywords o4 NATURAL
JOIN submission_search_keyword_list k4 ,
submission_search_object_keywords o5 NATURAL
JOIN submission_search_keyword_list k5 ,
submission_search_object_keywords o6 NATURAL
JOIN submission_search_keyword_list k6
WHERE ( js . setting_value <> ?
OR js . setting_value IS ? )
AND j . enabled = ?
AND s . status = ?
AND i . published = ?
AND k0 . keyword_text = ?
AND k1 . keyword_text = ?
AND o0 . object_id = o1 . object_id
AND o0 . pos + ? = o1 . pos
AND k2 . keyword_text = ?
AND o0 . object_id = o2 . object_id
AND o0 . pos + ? = o2 . pos
AND k3 . keyword_text = ?
AND o0 . object_id = o3 . object_id
AND o0 . pos + ? = o3 . pos
AND k4 . keyword_text = ?
AND o0 . object_id = o4 . object_id
AND o0 . pos + ? = o4 . pos
AND k5 . keyword_text = ?
AND o0 . object_id = o5 . object_id
AND o0 . pos + ? = o5 . pos
AND k6 . keyword_text = ?
AND o0 . object_id = o6 . object_id
AND o0 . pos + ? = o6 . pos
AND i . journal_id = ?
GROUP BY o . submission_id
ORDER BY count DESC LIMIT ?