Go to file
Rafa de la Torre c06d24aa19 Make CDB_Get_Foreign_Updated_At robust to missing CDB_TableMetadata
This may happen with non-carto DB's, when checking the updated_at
times and not finding the corresponding remote.cdb_tablemetadata
imported from the foreign non-carto DB.

Instead of failing, return a NOW() timestampt, so that caching logic
just assumes there may have been changes.

This makes it work today, and leaves open the possibility of adding
the required carto metadata for homogeneous caching in the future.
2019-06-28 16:25:52 +02:00
doc Add CDB_EstimateRowCount function 2017-04-07 15:35:48 +02:00
expected Remove ddl triggers specs 2016-01-21 11:46:39 +01:00
scripts-available Make CDB_Get_Foreign_Updated_At robust to missing CDB_TableMetadata 2019-06-28 16:25:52 +02:00
scripts-enabled ghost tables functions using redis 2019-03-06 18:20:04 +01:00
sql Remove ddl triggers specs 2016-01-21 11:46:39 +01:00
test Remove unnecessary changes 2019-05-31 15:52:55 +02:00
util Remove unnecessary changes 2019-05-31 15:52:55 +02:00
.gitignore Ignore vim temporal files 2015-08-14 13:58:10 +02:00
.travis.yml Travis: Add PG 9.6 to the test matrix 2019-05-31 16:26:07 +02:00
carto-package.json Fix carto-package requirements to be SemVer compliant 2019-06-17 13:33:24 +02:00
cartodb_version.sql.in Fully qualify function calls 2019-05-31 15:37:15 +02:00
cartodb.control.in Remove schema_triggers 2015-11-04 17:06:54 +01:00
CONTRIBUTING.md Update CONTRIBUTING.md 2019-06-03 12:31:06 +02:00
LICENSE Update LICENSE, set copyright ownership to Vizzuality 2014-05-06 07:33:01 +02:00
Makefile release 0.27.2 2019-06-21 09:19:04 +02:00
NEWS.md release 0.27.2 2019-06-21 09:19:04 +02:00
README.md Raise minimum requirement to Postgis 9.6 2019-05-31 15:37:15 +02:00

cartodb-postgresql

Build Status

PostgreSQL extension for CartoDB

See the cartodb-postgresql wiki.

Dependencies

Install

make all install

Test installation

make installcheck

NOTE: you need to run the installcheck as a superuser, use PGUSER env variable if needed, like: PGUSER=postgres make installcheck

NOTE: the tests need to run against a clean postgres instance, if you have some roles already created test will likely fail due publicuser not being dropped.

Enable database

In a database that needs to be turned into a "cartodb" user database, run:

CREATE EXTENSION postgis;
CREATE EXTENSION cartodb;

Migrate existing cartodb database

When upgrading an existing cartodb user database, the cartodb extension can be migrated from the "unpackaged" version. The procedure will copy the data from public.CDB_TableMetada to cartodb.CDB_TableMetadata, re-cartodbfy all tables using old functions in triggers and drop the cartodb functions from the 'public' schema. All new cartodb objects will be in the "cartodb" schema.

CREATE EXTENSION postgis FROM unpackaged;
CREATE EXTENSION cartodb FROM unpackaged;

Update cartodb extension

Updating the version of cartodb extension installed in a database is done using ALTER EXTENSION.

ALTER EXTENSION cartodb UPDATE TO '0.1.1';

The target version needs to be installed on the system first (see Install section).

If the "TO 'x.y.z'" part is omitted, the extension will be updated to the latest installed version, which you can find with the following command:

grep default_version `pg_config --sharedir`/extension/cartodb.control

Updates are performed by PostgreSQL by loading one or more migration scripts as needed to go from the installed version S to the target version T. All migration scripts are in the "extension" directory of PostgreSQL:

ls `pg_config --sharedir`/extension/cartodb*

During development the cartodb extension version doesn't change with every commit, so testing latest change requires special steps documented in the CONTRIBUTING document, under "Testing changes live".

Limitations

  • The main schema of an organization user must have one only owner (the user).