summaryrefslogtreecommitdiff
path: root/src/include/taler_exchangedb_plugin.h
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2018-08-19 16:01:57 +0200
committerChristian Grothoff <christian@grothoff.org>2018-08-19 16:01:57 +0200
commit0df2028f96f5977739d4659bf253e0c6d9468326 (patch)
tree906222af6c332e219af4a5d112891d7212237de3 /src/include/taler_exchangedb_plugin.h
parentddca1f5c68e112928d715e1aee2758c40e14fb51 (diff)
downloadexchange-0df2028f96f5977739d4659bf253e0c6d9468326.tar.gz
exchange-0df2028f96f5977739d4659bf253e0c6d9468326.tar.bz2
exchange-0df2028f96f5977739d4659bf253e0c6d9468326.zip
make transactions smaller to try to reduce rollbacks
Diffstat (limited to 'src/include/taler_exchangedb_plugin.h')
-rw-r--r--src/include/taler_exchangedb_plugin.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h
index 6e5947377..b06bc7409 100644
--- a/src/include/taler_exchangedb_plugin.h
+++ b/src/include/taler_exchangedb_plugin.h
@@ -1398,6 +1398,20 @@ struct TALER_EXCHANGEDB_Plugin
/**
+ * Make sure the given @a coin is known to the database.
+ *
+ * @param cls database connection plugin state
+ * @param session database session
+ * @param coin the coin that must be made known
+ * @return database transaction status, non-negative on success
+ */
+ enum GNUNET_DB_QueryStatus
+ (*ensure_coin_known) (void *cls,
+ struct TALER_EXCHANGEDB_Session *session,
+ const struct TALER_CoinPublicInfo *coin);
+
+
+ /**
* Check if we have the specified deposit already in the database.
*
* @param cls the @e cls of this struct with the plugin-specific state