chore(langchain): improve PostgreSQL Manager upsert SQLAlchemy API calls. (#32748)

- Make explicit the `constraint` parameter name to avoid mixing it with
`index_elements`
[[Documentation](https://docs.sqlalchemy.org/en/20/dialects/postgresql.html#sqlalchemy.dialects.postgresql.Insert.on_conflict_do_update)]
- ~Fallback on the existing `group_id` row value, to avoid setting it to
`None`.~
This commit is contained in:
Rémy HUBSCHER
2025-08-30 21:13:24 +02:00
committed by GitHub
parent 1f2ab17dff
commit fcf7175392

View File

@@ -326,7 +326,7 @@ class SQLRecordManager(RecordManager):
records_to_upsert, records_to_upsert,
) )
stmt = pg_insert_stmt.on_conflict_do_update( # type: ignore[assignment] stmt = pg_insert_stmt.on_conflict_do_update( # type: ignore[assignment]
"uix_key_namespace", # Name of constraint constraint="uix_key_namespace", # Name of constraint
set_={ set_={
"updated_at": pg_insert_stmt.excluded.updated_at, "updated_at": pg_insert_stmt.excluded.updated_at,
"group_id": pg_insert_stmt.excluded.group_id, "group_id": pg_insert_stmt.excluded.group_id,
@@ -408,7 +408,7 @@ class SQLRecordManager(RecordManager):
records_to_upsert, records_to_upsert,
) )
stmt = pg_insert_stmt.on_conflict_do_update( # type: ignore[assignment] stmt = pg_insert_stmt.on_conflict_do_update( # type: ignore[assignment]
"uix_key_namespace", # Name of constraint constraint="uix_key_namespace", # Name of constraint
set_={ set_={
"updated_at": pg_insert_stmt.excluded.updated_at, "updated_at": pg_insert_stmt.excluded.updated_at,
"group_id": pg_insert_stmt.excluded.group_id, "group_id": pg_insert_stmt.excluded.group_id,