Try to retain existing cartodb_id values

Also reset sequence when original cartodb_id values correctly
cast to integers, and does not keep a backup in that case.

Closes #27
This commit is contained in:
Sandro Santilli
2014-05-22 14:11:09 +02:00
parent 134d2d29b6
commit 967b7abec0
3 changed files with 57 additions and 0 deletions

View File

@@ -178,6 +178,18 @@ SELECT CDB_CartodbfyTableCheck('t', 'text timestamps');
SELECT reftime-created_at, reftime-updated_at FROM t;
DROP TABLE t;
-- table with existing cartodb_id field ot type text
CREATE TABLE t AS SELECT 10::text as cartodb_id;
SELECT CDB_CartodbfyTableCheck('t', 'text cartodb_id');
select cartodb_id/2 FROM t;
DROP TABLE t;
-- table with existing cartodb_id field ot type text not casting
CREATE TABLE t AS SELECT 'nan' as cartodb_id;
SELECT CDB_CartodbfyTableCheck('t', 'uncasting text cartodb_id');
select cartodb_id,_cartodb_id0 FROM t;
DROP TABLE t;
-- TODO: table with existing custom-triggered the_geom
DROP FUNCTION CDB_CartodbfyTableCheck(regclass, text);