Revisit the triggers that update the contribution_source table and look for holes that would make it possible to omit records. Ellery found that 174 of about 6000 donations are not in the contribution_source table,
SELECT * FROM civicrm.civicrm_contribution co, drupal.contribution_tracking ct LEFT JOIN drupal.contribution_source cs ON ct.id = cs.contribution_tracking_id WHERE co.id = ct.contribution_id AND ts BETWEEN 20150410120000 AND 20150510000000 AND SUBSTRING_INDEX(ct.utm_source, '.', 1) = 'B15_0410_enUS_dsk_pm_ctl' -- Select just rows missing a contribution_source AND cs.contribution_tracking_id is NULL
This is used by @ellery and the Online team to run queries and optimize our campaigns.