I would like to optimize Views as they cause most of my performance bottlenecks.

The MySQL slowlog shows not only Views related query times > 5s but, what is more scary, selects with over 10 LEFT JOINs. I have already manually removed some columns from views. It was over 14 LEFT JOINs before...

Are there any solutions (without writing custom module queries) to eliminate or limit LEFT JOINs in Views select queries ?

I found there is the Shadow contrib module available. Is it ready for production website?


I would use that contrib module. Beta releases are generally darn tight and seeing that it is beta3 would lend to the idea that it will soon be out of beta. (Of course it may never come out so that doesn't say much.) Also, the maintainer group seems to be high quality which gives me even more confidence.

To answer your other question I do not thing there is anything else you can do besides write something yourself. I was looking around and saw some initial phases of work being done on this but nothing as far along as that project you linked. I imagine this is something they will work on for D8. Your find is surprising. The only other place I might check if I were is IRC just to make sure that there isn't some other optimization technique or module out there that isn't Views specific but that will help. (Probably not, but worth a try.)

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.