diff options
author | Jason Little <realtyem@gmail.com> | 2023-09-15 03:16:45 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-15 09:16:45 +0100 |
commit | 2a0f86f88fdb3d450212541ba7db57df6a184ae3 (patch) | |
tree | 579bfc7b1dec7c5956e016ceb9a493c9ac8805fb /synapse/storage/database.py | |
parent | Only use literal strings for process names (#16315) (diff) | |
download | synapse-2a0f86f88fdb3d450212541ba7db57df6a184ae3.tar.xz |
Convert `_insert_graph_receipts_txn` to `simple_upsert` (#16299)
Diffstat (limited to 'synapse/storage/database.py')
-rw-r--r-- | synapse/storage/database.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/synapse/storage/database.py b/synapse/storage/database.py index 6c5fcdcec3..697bc5651c 100644 --- a/synapse/storage/database.py +++ b/synapse/storage/database.py @@ -1193,6 +1193,7 @@ class DatabasePool: keyvalues: Dict[str, Any], values: Dict[str, Any], insertion_values: Optional[Dict[str, Any]] = None, + where_clause: Optional[str] = None, desc: str = "simple_upsert", ) -> bool: """Insert a row with values + insertion_values; on conflict, update with values. @@ -1243,6 +1244,7 @@ class DatabasePool: keyvalues: The unique key columns and their new values values: The nonunique columns and their new values insertion_values: additional key/values to use only when inserting + where_clause: An index predicate to apply to the upsert. desc: description of the transaction, for logging and metrics Returns: Returns True if a row was inserted or updated (i.e. if `values` is @@ -1263,6 +1265,7 @@ class DatabasePool: keyvalues, values, insertion_values, + where_clause, db_autocommit=autocommit, ) except self.engine.module.IntegrityError as e: |