Massively speed up datagrid rendering.
Review Request #4030 — Created April 7, 2013 and submitted
Massively speed up datagrid rendering. While investigating a slowdown with the new RBCommons deployment, I realized we were creating a RequestContext over and over again. Once for every rendered cell. It was excessive. I've changed it to only create one RequestContext per request, total, and to reuse those values for any new contexts used when rendering a cell. Prior to this, our weirdly slow RBCommons datagrid rendering on the new instance was hovering around 6 seconds. After, it was at just around 1 second without any cached queries, and 0.5 seconds after. While we still need to track down what's going on on that instance, I can say that our datagrid rendering has never been faster.
Tested locally, and pages loaded instantaneously. Deployed on RBCommons, and pages were *much* faster, especially once queries were cached. Unit tests pass.