mirror of
https://github.com/timescale/timescaledb.git
synced 2025-05-16 18:43:18 +08:00
The `create_chunk` API has been extended to allow creating a chunk from an existing relational table. The table is turned into a chunk by attaching it to the root hypertable via inheritance. The purpose of this functionality is to allow copying a chunk to another node. First, the chunk table and data is copied. After that, the `create_chunk` can be executed to make the new table part of the hypertable. Currently, the relational table used to create the chunk has to match the hypertable in terms of constraints, triggers, etc. PostgreSQL itself enforces the existence of same-named CHECK constraints, but no enforcement currently exists for other objects, including triggers UNIQUE, PRIMARY KEY, or FOREIGN KEY constraints. Such enforcement can be implemented in the future, if deemed necessary. Another option is to automatically add all the required objects (triggers, constraints) based on the hypertable equivalents. However, that might also lead to duplicate objects in case some of them exist on the table prior to creating the chunk.
7 lines
376 B
SQL
7 lines
376 B
SQL
CREATE SCHEMA IF NOT EXISTS timescaledb_experimental;
|
|
GRANT USAGE ON SCHEMA timescaledb_experimental TO PUBLIC;
|
|
DROP FUNCTION IF EXISTS _timescaledb_internal.block_new_chunks;
|
|
DROP FUNCTION IF EXISTS _timescaledb_internal.allow_new_chunks;
|
|
DROP FUNCTION IF EXISTS _timescaledb_internal.refresh_continuous_aggregate;
|
|
DROP FUNCTION IF EXISTS _timescaledb_internal.create_chunk;
|