Skip to content

v2.5.1 — schema_prefix process-global isolation fix

Choose a tag to compare

@isc-tdyar isc-tdyar released this 30 Jul 04:32
· 435 commits to main since this release
88d6974

Fix: schema_prefix process-global isolation

schema_prefix was a module-level global in cypher/translator.py. Two engines instantiated in the same process silently overwrote each other's prefix — every read from the second engine resolved to the wrong schema and returned SQLCODE -30.

IRISGraphEngine now stores _schema_prefix as instance state. All SQL generation in _engine/ mixins calls self._t(name), which passes the per-instance prefix to _table(name, prefix=...) rather than reading the module global. The module global is preserved for backward compatibility.

17 new unit tests in test_schema_prefix_isolation.py, including a regression case that interleaves two engines with different prefixes across 5 rounds and asserts zero bleed-through.

Upgrade

pip install --upgrade iris-vector-graph