Además de eliminar algunas consultas específicas de MySQL, la migración fue bastante fluida. El problema ahora es que durante el desarrollo hay muchas más consultas al DB que antes.Pasar de MySQL a Postgres en Rails 3
Started GET "/profiles/data" for 127.0.0.1 at Tue Sep 21 10:26:18 +0200 2010
Processing by ProfilesController#data as JSON
User Load (24.3ms) SELECT "users".* FROM "users" ORDER BY updated_at DESC LIMIT 1
CACHE (0.0ms) SELECT "users".* FROM "users" ORDER BY updated_at DESC LIMIT 1
SQL (10.5ms) SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull
FROM pg_attribute a LEFT JOIN pg_attrdef d
ON a.attrelid = d.adrelid AND a.attnum = d.adnum
WHERE a.attrelid = '"users"'::regclass
AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum
Cada consulta individual tiene como resultado entre 3 y 8 consultas adicionales como la anterior. ¿Qué y por qué está pasando? Uno de los problemas ahora es que developement.log está hinchado e ilegible. Pierdo un montón de tiempo de desplazamiento entre medio de las consultas en busca de lo correcto ...
Actualización: 21 mar
septiembre Esto no está relacionado con el tipo de consulta. Todas las consultas están generando este tipo de stuph:
ree-1.8.7-2010.02 > User.first
SQL (0.3ms) SHOW client_min_messages
SQL (2.0ms) SET client_min_messages TO 'panic'
SQL (6.3ms) SET standard_conforming_strings = on
SQL (18.3ms) SET client_min_messages TO 'notice'
SQL (15.6ms) SET time zone 'UTC'
SQL (17.2ms) SHOW TIME ZONE
SQL (23.8ms) SELECT tablename FROM pg_tables WHERE schemaname = ANY (current_schemas(false))
User Load (162.4ms) SELECT "users".* FROM "users" LIMIT 1
SQL (7.5ms) SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc,
a.attnotnull FROM pg_attribute a LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid
AND a.attnum = d.adnum WHERE a.attrelid = '"users"'::regclass AND a.attnum > 0 AND
NOT a.attisdropped ORDER BY a.attnum
[...] 1 row in set ree-1.8.7-2010.02>
Publique la consulta que genera la instrucción. Probablemente estés usando algún código orientado a MySQL. –
No es el caso, explicación agregada a la pregunta. – mdrozdziel