From 5e3acbb46274cf24e93906a2db802c8655c5dcfe Mon Sep 17 00:00:00 2001 From: Dimitri Fontaine Date: Fri, 16 Feb 2018 23:42:46 +0100 Subject: [PATCH] When merging catalogs, "float" and "double precision" the same type. PostgreSQL understands both spellings of the data type name and implements float as being a double precision value, so we should refrain from any warning about that non-discrepency when doing a data-only load. Should fix #746. --- src/pgsql/merge-catalogs.lisp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/pgsql/merge-catalogs.lisp b/src/pgsql/merge-catalogs.lisp index bec3be5..6654510 100644 --- a/src/pgsql/merge-catalogs.lisp +++ b/src/pgsql/merge-catalogs.lisp @@ -117,14 +117,18 @@ (column-name source-column) (column-type-name source-column) (column-type-name target-column) - (schema-name (table-schema target-table)) - (table-name target-table) - (column-name target-column)))))) + (ensure-unquoted + (schema-name (table-schema target-table))) + (ensure-unquoted + (table-name target-table)) + (ensure-unquoted + (column-name target-column))))))) (defvar *type-name-mapping* '(("int" "integer") ("serial" "integer") ("bigserial" "bigint") + ("float" "double precision") ("char" "character") ("varchar" "character varying") ("timestamp" "timestamp without time zone")