From 31bd244ff64069813e62474254f260c45bcd77ea Mon Sep 17 00:00:00 2001 From: Jon goldberg Date: Wed, 30 Sep 2015 17:25:15 -0400 Subject: [PATCH] CRM-17315 - CiviReport - Membership Contribution Details report - index the temporary table to prevent unindexed joins when calculating statistics --- CRM/Report/Form/Member/ContributionDetail.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CRM/Report/Form/Member/ContributionDetail.php b/CRM/Report/Form/Member/ContributionDetail.php index 489253bea6..c2d2fe243f 100644 --- a/CRM/Report/Form/Member/ContributionDetail.php +++ b/CRM/Report/Form/Member/ContributionDetail.php @@ -542,7 +542,8 @@ class CRM_Report_Form_Member_ContributionDetail extends CRM_Report_Form { CRM_Core_DAO::executeQuery($dropTempTable); $sql = 'CREATE TEMPORARY TABLE civireport_membership_contribution_detail - (contribution_id int, contact_id int, membership_id int, payment_id int) ENGINE=HEAP'; + (contribution_id int, INDEX USING HASH(contribution_id), contact_id int, INDEX USING HASH(contact_id), + membership_id int, INDEX USING HASH(membership_id), payment_id int, INDEX USING HASH(payment_id)) ENGINE=MEMORY'; CRM_Core_DAO::executeQuery($sql); $fillTemp = " -- 2.25.1