We have a number of queries that do a lot of summarization of data. The
base query only returns one row, but due to a Rails quirk, we have to call
rel.first to get the first (only) element of the list, which in some cases
uses a "LIMIT 1" for the underlying query. With or without the LIMIT 1, the
results are identical, but with the LIMIT 1, a 400ms query might take
5000ms to execute.
Please note that this does occur on PostgreSQL version 9.6.1, on Linux or
OSX. We can certainly work around it if we're mindful of it, but it's a
surprising "gotcha".
Cheers,
Aaron Tate