I was just running a relative simple exists? query:
Page.exists?([“id > ?”,i])
which equates to
SELECT COUNT(*) FROM pages
WHERE (id > 1400000) LIMIT 1
You would think with a COUNT and a LIMIT 1, that things would be really
fast, but its SUPER slow, its trying to count all the records greater
than 1400000.
This is N times faster:
SELECT * FROM pages
WHERE (id > 1400000) LIMIT 1
Do you guys think this needs to be changed, or not worth changing
COUNT(*) to just * even though its a “LIMIT 1” ?
COMPLETELY IGNORE this “issue”, this was caused by an old overwrite of
the exists? function that I had from years ago.
MY BAD!
On Oct 12, 12:19 am, Aryk G. [email protected]
wrote:
than 1400000.
This is N times faster:
SELECT * FROM pages
WHERE (id > 1400000) LIMIT 1
Do you guys think this needs to be changed, or not worth changing
COUNT(*) to just * even though its a “LIMIT 1” ?
Which version of rails are you running? I’ve looked at the source of
edge, 2-1-stable and 2-0-stable and for all those versions exists does
not appear to use count. Are you sure the query is coming from there?
Fred
Fred, this was my mistake read, the post above yours.