Details
- 
    Type:
Bug
 - 
    Status: Done/Fixed
 - 
    Priority:
Major
 - 
    Resolution: Fixed/Completed
 - 
    Affects Version/s: 4.0.7
 - 
    Fix Version/s: 4.1.0
 - 
    Component/s: CiviContribute
 - 
    Labels:None
 
Description
http://forum.civicrm.org/index.php/topic,22572.0/topicseen.html
The query for contribution search performs a left join on every custom field (not just those related to contributions).
It also joins relationship fields and activity fields.
From what I can tell, all of these joins are unnecessary since none of this information gets displayed in the search results (including custom contribution fields).
Ironically...
I recently implemented the new hook_civicrm_searchColumns() to pull some custom data into contribution search results. Despite all the above-mentioned joins, no custom data was available for the contribution objects passed to that hook, so I had to run a separate query in my function to grab it.
If you decide not to get rid of the contribution custom field joins, I would request that the information actually gets read into the objects instead of discarded.