mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #15846
[Bug 1081947] Re: Use of CAST() causes extreme slowdown in large MySQL sites
** Changed in: mahara
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1081947
Title:
Use of CAST() causes extreme slowdown in large MySQL sites
Status in Mahara ePortfolio:
Fix Released
Status in Mahara 1.6 series:
In Progress
Status in Mahara 1.7 series:
In Progress
Status in Mahara 1.8 series:
Fix Committed
Status in Mahara 1.9 series:
Fix Released
Bug description:
Mahara version 1.5.2
Linux CentOS release 5.8
PHP Version 5.3.15
MySQL 5.0.77
When editing a page and trying to add a normal text box by dragging it
into the page, this loads for approx 2 minutes or more and then
eventually appears.
It happens with a journal too but all others are fine and are instant
as they should be.
I'm not getting any apache log errors for this nor general server
errors. The only thing I am able to see is the query that it hangs on
for this length of time.... it is the below...
I hope someone can help as obviously this is causing quite a lot of
issues for the users!! Anyone able to diagnose what is the issue here?
The thing is, there is another exact version of the Mahara site
alongside this one but just a blank version which runs perfectly fine
so this must be an issue within the database somewhere or the
maharadata.
Query below: this hangs for about 1 minute 45..
SELECT a.*, CAST(a.owner IS NOT NULL AND a.owner = '1739' AS UNSIGNED) AS editable FROM "artefact" a
LEFT OUTER JOIN "artefact_parent_cache" apc ON (a.id = apc.artefact AND a.institution = 'mahara' AND apc.parent = 371) WHERE (
a.owner = '1739'
OR a.id IN (
SELECT aar.artefact
FROM "group_member" m
JOIN "artefact" aa ON m.group = aa.group
JOIN "artefact_access_role" aar ON aar.role = m.role AND aar.artefact = aa.id
WHERE m.member = '1739' AND aar.can_republish = 1
)
OR a.id IN (SELECT artefact FROM "artefact_access_usr" WHERE usr = '1739' AND can_republish = 1)
OR a.institution IN ('test','mahara')
) AND artefacttype IN('blog')ORDER BY title ASC LIMIT 10 |
Then this one for the rest of the time until eventually the text box
or journal appears on the page:
SELECT COUNT(*) FROM "artefact" a
LEFT OUTER JOIN "artefact_parent_cache" apc ON (a.id = apc.artefact AND a.institution = 'mahara' AND apc.parent = 371) WHERE (
a.owner = '1739'
OR a.id IN (
SELECT aar.artefact
FROM "group_member" m
JOIN "artefact" aa ON m.group = aa.group
JOIN "artefact_access_role" aar ON aar.role = m.role AND aar.artefact = aa.id
WHERE m.member = '1739' AND aar.can_republish = 1
)
OR a.id IN (SELECT artefact FROM "artefact_access_usr" WHERE usr = '1739' AND can_republish = 1)
OR a.institution IN ('test','mahara')
) AND artefacttype IN('blogpost') |
Thank you for your help
To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1081947/+subscriptions
References