Rewriting db-fetch-query-results
After [
d39d60ec68a2f5c2909b891ca949cb5ca39d39f5] I realized that the array was being dereferenced every row of the results.
This patch creates a set of closures for reading the columns, and then maps across those closures on each row.
On SBCL 1.0.25:
a query that returns ~2k rows, repeated 50 times is about 3% faster, same memory
a query that returns 1 row repeated 2000 times is about the same speed, 10% GREATER memory
Going to revert this patch, but wanted to have it recorded.