-
Notifications
You must be signed in to change notification settings - Fork 761
cannot create distributed table that depends on an object created by an extension that's created in the same transaction #8472
Copy link
Copy link
Open
Labels
Description
I was testing Elastic Clusters, i.e., our offering on Azure today, with https://github.com/secp256k1-sha256/postgres-compatibility-index/ on secp256k1-sha256/postgres-compatibility-index@dea6314.
For ease of testing, used schema-distributed tables but this bug also applies to usual distributed tables etc.
select citus_version();
┌───────────────────────────────────────────────────────────────────────────────────────────┐
│ citus_version │
├───────────────────────────────────────────────────────────────────────────────────────────┤
│ Citus 13.2.0 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.0, 64-bit gitref: v13.2.0 │
└───────────────────────────────────────────────────────────────────────────────────────────┘
(1 row)Initial setup;
SET citus.enable_schema_based_sharding TO ON;
CREATE SCHEMA pci_test;
RESET citus.enable_schema_based_sharding;
SET search_path TO pci_test;Reproduce with postgis:
BEGIN;
CREATE EXTENSION IF NOT EXISTS postgis;
CREATE TABLE test_geo (geom GEOMETRY);
ERROR: type "pci_test.geometry" does not exist
CONTEXT: while executing command on 10.33.0.254:7002Reproduce with pgvector:
BEGIN;
CREATE EXTENSION IF NOT EXISTS vector;
CREATE TABLE test_vector (embedding VECTOR(3));
ERROR: type "pci_test.vector" does not exist
CONTEXT: while executing command on 10.33.0.254:7002Reproduce with btree_gist:
BEGIN;
CREATE EXTENSION IF NOT EXISTS btree_gist;
CREATE TABLE test_exclusion (id int, t text, ts tstzrange, exclude using gist ((case when t ='A' THEN true end) with =,ts with && ));
ERROR: data type boolean has no default operator class for access method "gist"
HINT: You must specify an operator class for the index or define a default operator class for the data type.
CONTEXT: while executing command on 10.33.0.254:7002Reactions are currently unavailable