Bug description
When importing a database that contains exclusion constraints using GiST index with = and && operators on bigint and tstzrange columns, pgModeler fails with ObjectNotImported and UndefinedAttributeValue errors.
How to reproduce
On PostgreSQL 18.1:
- Create a table with an exclusion constraint using GiST:
CREATE EXTENSION IF NOT EXISTS btree_gist;
CREATE TABLE test_table (
id bigint NOT NULL,
valid_period tstzrange NOT NULL DEFAULT tstzrange(now(), 'infinity')
);
ALTER TABLE test_table
ADD CONSTRAINT test_table_id_valid_period_excl
EXCLUDE USING gist (id WITH =, valid_period WITH &&);
-
Use pgModeler's "Import" feature to import from this database
-
The constraint fails to import
Expected behavior
Successfully import the exclusion constraint with proper operator resolution
Info about your desktop
- OS:
Debian Linux
- Version:
Linux debian 6.1.0-41-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64 GNU/Linux
- Window manager:
Gnome
- pgModeler version:
pgmodeler_plus-2.0.0-alpha-linux64.appimage
- Qt version:
?
Stacktrace / Debug info
[ObjectNotImported] The object 'test_table.test_table_id_valid_period_excl' (Constraint),
oid 'XXXXX', could not be imported due to one or more errors! Check the exception stack
for more details. 'HINT:' if the object somehow references objects in 'pg_catalog' or
'information_schema' consider enabling the import of system/extension objects.
[UndefinedAttributeValue] Attribute 'operator' with an undefined value in file
'/home/user/pgModeler/schemas/xml/excelement.sch', line 28, column 23!
Raw attributes from error
columns: [0:1]={1,2}
ex-constr: true
expressions: id WITH =, valid_period WITH &&)
index-type: gist
name: test_table_id_valid_period_excl
no-inherit: true
opclasses: [0:1]={16527,10078}
operators: {410,3888}
type: ex-constr
Additional info
The issue appears to be that pgModeler cannot resolve the operators (OIDs 410 for = on bigint, 3888 for && on tstzrange) when they come from the btree_gist extension. The opclasses reference OIDs that pgModeler doesn't recognize.
Bug description
When importing a database that contains exclusion constraints using GiST index with
=and&&operators on bigint and tstzrange columns, pgModeler fails with ObjectNotImported and UndefinedAttributeValue errors.How to reproduce
On PostgreSQL 18.1:
Use pgModeler's "Import" feature to import from this database
The constraint fails to import
Expected behavior
Successfully import the exclusion constraint with proper operator resolution
Info about your desktop
Debian LinuxLinux debian 6.1.0-41-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64 GNU/LinuxGnomepgmodeler_plus-2.0.0-alpha-linux64.appimage?Stacktrace / Debug info
Raw attributes from error
Additional info
The issue appears to be that pgModeler cannot resolve the operators (OIDs 410 for
=on bigint, 3888 for&&on tstzrange) when they come from the btree_gist extension. The opclasses reference OIDs that pgModeler doesn't recognize.