Repository navigation
v4.2.1
v4.2.1 (2026-10-10)
Fixed
-
initialize_schema()deployed nothing from a process inside IRIS (irispython,EmbeddedConnection):
deploy_packaged_classescallediris.createIRIS, which does not exist there, and the error was
swallowed, so BFS, PageRank, BM25 and the vector index quietly ran their fallbacks. It now uses
EmbeddedIRIS, which gainedget/setfor the deploy marker global, and spells%system
methods the way irispython needs (%Newis_New). Measured underirispythonin a scratch
namespace: 57 classes compiled, no errors, and a second deploy was a no-op. Reported by Mindwalk. -
The first
store_embeddingfailed on a fresh database inside IRIS:initialize_schemaadopts the
embedding tables intoembedding_registrywith no recorded width, the embedded cursor returns that
NULL as'', and four registry reads didint('')(ValueError);embedding_inventorydid the same
withfloat('')for the measured recall. An empty width or recall now reads as none.
Measured underirispython: the first write after the fix stores the row, and
tests/e2e/test_embedded_irispython_e2e.pynow runs a fresh namespace throughinitialize_schema,
store_embedding,embedding_inventoryanddelete_nodeinside the container's ownirispython
(it fails on the 4.2.0 tag). Reported by Mindwalk. -
EmbeddedCursor.executeraisedSQLError(SQLCODE 100, empty message) for an UPDATE or DELETE that
matched no row, which stoppedupgrade_to_4_0_0at its first statement on a database that had been
throughinitialize_schema(). A no-row statement is now an empty result (rowcount0), as on a
client cursor; every other error still raises.executemanytolerates it the same way and keeps
its one prepared statement. -
EmbeddedIRISgainednextSubscript,getString,killandisDefined, the Native API calls
migrations/kg_node_stores.pymakes. Measured on real globals underirispython. Reported by Mindwalk.
Documented
store_edgewrites SQL only, so^KG(whatShortestPathJsonand BFS read) is stale untilsync();
create_edgewrites both. This is by design, now said in the docstring.